mm/nobootmem.c: return 0 when start_pfn equals end_pfn
authorWei Yang <richard.weiyang@gmail.com>
Thu, 6 Jul 2017 22:36:53 +0000 (15:36 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Thu, 6 Jul 2017 23:24:31 +0000 (16:24 -0700)
When start_pfn equals end_pfn, __free_pages_memory() has no effect and
__free_memory_core() will finally return (end_pfn - start_pfn) = 0.

This patch returns 0 directly when start_pfn equals end_pfn.

Link: http://lkml.kernel.org/r/20170502131115.6650-1-richard.weiyang@gmail.com
Signed-off-by: Wei Yang <richard.weiyang@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
mm/nobootmem.c

index 487dad610731b7746d1fd3668e98c6ede3828be7..36454d0f96ee6b91383554c83015a2b47e66f038 100644 (file)
@@ -118,7 +118,7 @@ static unsigned long __init __free_memory_core(phys_addr_t start,
        unsigned long end_pfn = min_t(unsigned long,
                                      PFN_DOWN(end), max_low_pfn);
 
-       if (start_pfn > end_pfn)
+       if (start_pfn >= end_pfn)
                return 0;
 
        __free_pages_memory(start_pfn, end_pfn);