Messages in this thread | | | From | Pavel Tatashin <> | Date | Tue, 13 Mar 2018 21:02:53 -0400 | Subject | Re: [PATCH v2 1/2] mm: uninitialized struct page poisoning sanity checking |
| |
On Tue, Mar 13, 2018 at 8:53 PM, Sasha Levin <Alexander.Levin@microsoft.com> wrote: > On Tue, Mar 13, 2018 at 08:38:57PM -0400, Pavel Tatashin wrote: >>Hi Sasha, >> >>It seems the patch is doing the right thing, and it catches bugs. Here >>we access uninitialized struct page. The question is why this happens? > > Not completely; note that we die on an invalid reference rather than > assertion failure.
I think that invalid reference happens within assertion failure, as far as I can tell, it is dump_page() where we get the invalid reference, but to get to dump_page() from get_nid_for_pfn() we must have triggered the assertion.
> >>register_mem_sect_under_node(struct memory_block *mem_blk, int nid) >> page_nid = get_nid_for_pfn(pfn); >> >>node id is stored in page flags, and since struct page is poisoned, >>and the pattern is recognized, the panic is triggered. >> >>Do you have config file? Also, instructions how to reproduce it? > > Attached the config. It just happens on boot.
Thanks, I will try in qemu.
Pasha
| |