The routines hmm_devmem_add(), and hmm_devmem_add_resource() are small wrappers around devm_memremap_pages(). The devm_memremap_pages() interface is a subset of the hmm functionality which has more and deeper ties into the kernel memory management implementation. It was an oversight that these symbols were not marked EXPORT_SYMBOL_GPL from the outset due to how they originally copied (and now reuse) devm_memremap_pages(). Cc: Christoph Hellwig <hch@xxxxxx> Cc: "Jérôme Glisse" <jglisse@xxxxxxxxxx> Cc: Logan Gunthorpe <logang@xxxxxxxxxxxx> Signed-off-by: Dan Williams <dan.j.williams@xxxxxxxxx> --- mm/hmm.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/mm/hmm.c b/mm/hmm.c index a4162406067c..d9aef1266ed6 100644 --- a/mm/hmm.c +++ b/mm/hmm.c @@ -1072,7 +1072,7 @@ struct hmm_devmem *hmm_devmem_add(const struct hmm_devmem_ops *ops, return devmem; } -EXPORT_SYMBOL(hmm_devmem_add); +EXPORT_SYMBOL_GPL(hmm_devmem_add); struct hmm_devmem *hmm_devmem_add_resource(const struct hmm_devmem_ops *ops, struct device *device, @@ -1131,7 +1131,7 @@ struct hmm_devmem *hmm_devmem_add_resource(const struct hmm_devmem_ops *ops, return devmem; } -EXPORT_SYMBOL(hmm_devmem_add_resource); +EXPORT_SYMBOL_GPL(hmm_devmem_add_resource); /* * A device driver that wants to handle multiple devices memory through a