On 06/18/2018 11:05 PM, Dan Williams wrote: > Now that all producers of dev_pagemap instances in the kernel are > properly converted to EXPORT_SYMBOL_GPL, fix up implicit consumers that > interact with dev_pagemap owners via put_page(). To reiterate, > dev_pagemap producers are EXPORT_SYMBOL_GPL because they adopt and > modify core memory management interfaces such that the dev_pagemap owner > can interact with all other kernel infrastructure and sub-systems > (drivers, filesystems, etc...) that consume page structures. > > Fixes: e76384884344 ("mm: introduce MEMORY_DEVICE_FS_DAX and CONFIG_DEV_PAGEMAP_OPS") > Reported-by: Joe Gorse <jhgorse@xxxxxxxxx> > Reported-by: John Hubbard <jhubbard@xxxxxxxxxx> > Signed-off-by: Dan Williams <dan.j.williams@xxxxxxxxx> > --- > kernel/memremap.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/kernel/memremap.c b/kernel/memremap.c > index 16141b608b63..ecee37b44aa1 100644 > --- a/kernel/memremap.c > +++ b/kernel/memremap.c > @@ -330,7 +330,7 @@ EXPORT_SYMBOL_GPL(get_dev_pagemap); > > #ifdef CONFIG_DEV_PAGEMAP_OPS > DEFINE_STATIC_KEY_FALSE(devmap_managed_key); > -EXPORT_SYMBOL_GPL(devmap_managed_key); > +EXPORT_SYMBOL(devmap_managed_key); > static atomic_t devmap_enable; > > /* > @@ -371,5 +371,5 @@ void __put_devmap_managed_page(struct page *page) > } else if (!count) > __put_page(page); > } > -EXPORT_SYMBOL_GPL(__put_devmap_managed_page); > +EXPORT_SYMBOL(__put_devmap_managed_page); > #endif /* CONFIG_DEV_PAGEMAP_OPS */ > Yep, that fixes everything I was seeing. thanks, -- John Hubbard NVIDIA