On Wed, Sep 16, 2020 at 09:30:41AM +0200, David Hildenbrand wrote: >"mem" in the name already indicates the root, similar to >release_mem_region() and devm_request_mem_region(). Make it implicit. >The only single caller always passes iomem_resource, other parents are >not applicable. > Looks good to me. Reviewed-by: Wei Yang <richard.weiyang@xxxxxxxxxxxxxxxxx> >Suggested-by: Wei Yang <richard.weiyang@xxxxxxxxxxxxxxxxx> >Cc: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> >Cc: Michal Hocko <mhocko@xxxxxxxx> >Cc: Dan Williams <dan.j.williams@xxxxxxxxx> >Cc: Jason Gunthorpe <jgg@xxxxxxxx> >Cc: Kees Cook <keescook@xxxxxxxxxxxx> >Cc: Ard Biesheuvel <ardb@xxxxxxxxxx> >Cc: Pankaj Gupta <pankaj.gupta.linux@xxxxxxxxx> >Cc: Baoquan He <bhe@xxxxxxxxxx> >Cc: Wei Yang <richard.weiyang@xxxxxxxxxxxxxxxxx> >Signed-off-by: David Hildenbrand <david@xxxxxxxxxx> >--- > >Based on next-20200915. Follow up on > "[PATCH v4 0/8] selective merging of system ram resources" [1] >That's in next-20200915. As noted during review of v2 by Wei [2]. > >[1] https://lkml.kernel.org/r/20200911103459.10306-1-david@xxxxxxxxxx >[2] https://lkml.kernel.org/r/20200915021012.GC2007@L-31X9LVDL-1304.local > >--- > include/linux/ioport.h | 3 +-- > kernel/resource.c | 5 ++--- > mm/memory_hotplug.c | 2 +- > 3 files changed, 4 insertions(+), 6 deletions(-) > >diff --git a/include/linux/ioport.h b/include/linux/ioport.h >index 7e61389dcb01..5135d4b86cd6 100644 >--- a/include/linux/ioport.h >+++ b/include/linux/ioport.h >@@ -251,8 +251,7 @@ extern struct resource * __request_region(struct resource *, > extern void __release_region(struct resource *, resource_size_t, > resource_size_t); > #ifdef CONFIG_MEMORY_HOTREMOVE >-extern void release_mem_region_adjustable(struct resource *, resource_size_t, >- resource_size_t); >+extern void release_mem_region_adjustable(resource_size_t, resource_size_t); > #endif > #ifdef CONFIG_MEMORY_HOTPLUG > extern void merge_system_ram_resource(struct resource *res); >diff --git a/kernel/resource.c b/kernel/resource.c >index 7a91b935f4c2..ca2a666e4317 100644 >--- a/kernel/resource.c >+++ b/kernel/resource.c >@@ -1240,7 +1240,6 @@ EXPORT_SYMBOL(__release_region); > #ifdef CONFIG_MEMORY_HOTREMOVE > /** > * release_mem_region_adjustable - release a previously reserved memory region >- * @parent: parent resource descriptor > * @start: resource start address > * @size: resource region size > * >@@ -1258,9 +1257,9 @@ EXPORT_SYMBOL(__release_region); > * assumes that all children remain in the lower address entry for > * simplicity. Enhance this logic when necessary. > */ >-void release_mem_region_adjustable(struct resource *parent, >- resource_size_t start, resource_size_t size) >+void release_mem_region_adjustable(resource_size_t start, resource_size_t size) > { >+ struct resource *parent = &iomem_resource; > struct resource *new_res = NULL; > bool alloc_nofail = false; > struct resource **p; >diff --git a/mm/memory_hotplug.c b/mm/memory_hotplug.c >index 553c718226b3..7c5e4744ac51 100644 >--- a/mm/memory_hotplug.c >+++ b/mm/memory_hotplug.c >@@ -1764,7 +1764,7 @@ static int __ref try_remove_memory(int nid, u64 start, u64 size) > memblock_remove(start, size); > } > >- release_mem_region_adjustable(&iomem_resource, start, size); >+ release_mem_region_adjustable(start, size); > > try_offline_node(nid); > >-- >2.26.2 -- Wei Yang Help you, Help me