]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
mm/page_alloc: simplify lowmem_reserve max calculation
authorYe Liu <liuye@kylinos.cn>
Thu, 14 Aug 2025 09:00:52 +0000 (17:00 +0800)
committerAndrew Morton <akpm@linux-foundation.org>
Sat, 13 Sep 2025 23:55:02 +0000 (16:55 -0700)
Use max() to find the maximum lowmem_reserve value and min_t() to cap it
to managed_pages in calculate_totalreserve_pages(), instead of open-coding
the comparisons.  No functional change.

[liuye@kylinos.cn: fix layout, use min_t]
Link: https://lkml.kernel.org/r/20250815024509.37900-1-ye.liu@linux.dev
Link: https://lkml.kernel.org/r/20250814090053.22241-1-ye.liu@linux.dev
Signed-off-by: Ye Liu <liuye@kylinos.cn>
Acked-by: Johannes Weiner <hannes@cmpxchg.org>
Acked-by: Zi Yan <ziy@nvidia.com>
Reviewed-by: Wei Yang <richard.weiyang@gmail.com>
Cc: Brendan Jackman <jackmanb@google.com>
Cc: Michal Hocko <mhocko@suse.com>
Cc: Suren Baghdasaryan <surenb@google.com>
Cc: Vlastimil Babka <vbabka@suse.cz>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
mm/page_alloc.c

index 09241bb7663e039a8758abaae8cee0a95830cf70..fd55ca824c47bf207656226900695ffeb5237c4c 100644 (file)
@@ -6236,16 +6236,13 @@ static void calculate_totalreserve_pages(void)
                        unsigned long managed_pages = zone_managed_pages(zone);
 
                        /* Find valid and maximum lowmem_reserve in the zone */
-                       for (j = i; j < MAX_NR_ZONES; j++) {
-                               if (zone->lowmem_reserve[j] > max)
-                                       max = zone->lowmem_reserve[j];
-                       }
+                       for (j = i; j < MAX_NR_ZONES; j++)
+                               max = max(max, zone->lowmem_reserve[j]);
 
                        /* we treat the high watermark as reserved pages. */
                        max += high_wmark_pages(zone);
 
-                       if (max > managed_pages)
-                               max = managed_pages;
+                       max = min_t(unsigned long, max, managed_pages);
 
                        pgdat->totalreserve_pages += max;