On 17.09.19 03:07, Alastair D'Silva wrote: > From: Alastair D'Silva <alastair@xxxxxxxxxxx> > > The call to check_hotplug_memory_addressable() validates that the memory > is fully addressable. > > Without this call, it is possible that we may remap pages that is > not physically addressable, resulting in bogus section numbers > being returned from __section_nr(). > > Signed-off-by: Alastair D'Silva <alastair@xxxxxxxxxxx> > --- > mm/memremap.c | 5 +++++ > 1 file changed, 5 insertions(+) > > diff --git a/mm/memremap.c b/mm/memremap.c > index 86432650f829..de2b67586401 100644 > --- a/mm/memremap.c > +++ b/mm/memremap.c > @@ -175,6 +175,11 @@ void *devm_memremap_pages(struct device *dev, struct dev_pagemap *pgmap) > int error, nid, is_ram; > bool need_devmap_managed = true; > > + error = check_hotplug_memory_addressable(res->start, > + resource_size(res)); > + if (error) > + return ERR_PTR(error); > + > switch (pgmap->type) { > case MEMORY_DEVICE_PRIVATE: > if (!IS_ENABLED(CONFIG_DEVICE_PRIVATE)) { > Acked-by: David Hildenbrand <david@xxxxxxxxxx> -- Thanks, David / dhildenb