summaryrefslogtreecommitdiff
path: root/mm/page_alloc.c
diff options
context:
space:
mode:
authorVinod Koul <vkoul@kernel.org>2020-09-11 15:15:36 +0300
committerVinod Koul <vkoul@kernel.org>2020-09-11 15:15:36 +0300
commit4c80e9323967125ab8aa7c271ccc7624abc08832 (patch)
treec9881b5814c184aa0c1cb58c6383beab9173e388 /mm/page_alloc.c
parentef759e4a28c88965972c815af6023f41bd733316 (diff)
parentf4d51dffc6c01a9e94650d95ce0104964f8ae822 (diff)
downloadlinux-4c80e9323967125ab8aa7c271ccc7624abc08832.tar.xz
Merge tag 'v5.9-rc4' into next
Linux 5.9-rc4
Diffstat (limited to 'mm/page_alloc.c')
-rw-r--r--mm/page_alloc.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/mm/page_alloc.c b/mm/page_alloc.c
index 0e2bab486fea..fab5e97dc9ca 100644
--- a/mm/page_alloc.c
+++ b/mm/page_alloc.c
@@ -1302,6 +1302,11 @@ static void free_pcppages_bulk(struct zone *zone, int count,
struct page *page, *tmp;
LIST_HEAD(head);
+ /*
+ * Ensure proper count is passed which otherwise would stuck in the
+ * below while (list_empty(list)) loop.
+ */
+ count = min(pcp->count, count);
while (count) {
struct list_head *list;
@@ -7888,7 +7893,7 @@ int __meminit init_per_zone_wmark_min(void)
return 0;
}
-core_initcall(init_per_zone_wmark_min)
+postcore_initcall(init_per_zone_wmark_min)
/*
* min_free_kbytes_sysctl_handler - just a wrapper around proc_dointvec() so