Message ID | 20190821154006.1338-2-david@redhat.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | mm/memory_hotplug: Consider all zones when removing memory | expand |
diff --git a/mm/memory_hotplug.c b/mm/memory_hotplug.c index 32a5386758ce..71779b7b14df 100644 --- a/mm/memory_hotplug.c +++ b/mm/memory_hotplug.c @@ -542,13 +542,13 @@ void __remove_pages(struct zone *zone, unsigned long pfn, unsigned long map_offset = 0; unsigned long nr, start_sec, end_sec; + if (check_pfn_span(pfn, nr_pages, "remove")) + return; + map_offset = vmem_altmap_offset(altmap); clear_zone_contiguous(zone); - if (check_pfn_span(pfn, nr_pages, "remove")) - return; - start_sec = pfn_to_section_nr(pfn); end_sec = pfn_to_section_nr(pfn + nr_pages - 1); for (nr = start_sec; nr <= end_sec; nr++) {
The error path should never happen in practice (unless bringing up a new device driver, or on BUGs). However, it's clearer to not touch anything in case we are going to return right away. Move the check/return. Cc: Andrew Morton <akpm@linux-foundation.org> Cc: Oscar Salvador <osalvador@suse.de> Cc: Michal Hocko <mhocko@suse.com> Cc: David Hildenbrand <david@redhat.com> Cc: Pavel Tatashin <pasha.tatashin@soleen.com> Cc: Dan Williams <dan.j.williams@intel.com> Cc: Wei Yang <richardw.yang@linux.intel.com> Signed-off-by: David Hildenbrand <david@redhat.com> --- mm/memory_hotplug.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-)