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: "Jérôme Glisse" <jglisse@xxxxxxxxxx> Cc: Logan Gunthorpe <logang@xxxxxxxxxxxx> Reviewed-by: Christoph Hellwig <hch@xxxxxx> 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 5723331f6910..25c338d46576 100644 --- a/mm/hmm.c +++ b/mm/hmm.c @@ -1063,7 +1063,7 @@ struct hmm_devmem *hmm_devmem_add(const struct hmm_devmem_ops *ops, return result; 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, @@ -1117,7 +1117,7 @@ struct hmm_devmem *hmm_devmem_add_resource(const struct hmm_devmem_ops *ops, return result; 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