Re: [PATCH] memremap: Fix NULL pointer BUG in get_zone_device_page()

From: Kani, Toshimitsu
Date: Tue Aug 23 2016 - 22:02:48 EST


On Tue, 2016-08-23 at 13:42 -0700, Andrew Morton wrote:
> On Tue, 23 Aug 2016 12:43:20 -0600 Toshi Kani <toshi.kani@xxxxxxx>
> wrote:
>
> >
> > The following BUG was observed while starting up KVM with nvdimm
> > device as memory-backend-file to /dev/dax.
> >
> > ÂBUG: unable to handle kernel NULL pointer dereference at
> > 0000000000000008
> >
> > ...
> >
> > devm_memremap_pages() calls for_each_device_pfn() to walk through
> > all pfns in page_map.ÂÂpfn_first(), however, returns a wrong pfn
> > that leaves page->pgmap uninitialized.
> >
> > Since arch_add_memory() has set up direct mappings to the NVDIMM
> > range with altmap, pfn_first() should not modify the start pfn.
> > Change pfn_first() to simply return pfn of res->start.
>
> Which kernel version(s) do you think need fixing?

The fix applies to v4.5 and newer versions.

Thanks,
-Toshi