From b41b26bb6b1232d04cdb8ca1986a5c4b2cb63a27 Mon Sep 17 00:00:00 2001 From: Chen Wandun Date: Fri, 4 Mar 2022 15:22:24 +0800 Subject: [PATCH] mm: fix missing reclaim of low-reliable page cache hulk inclusion category: feature bugzilla: https://gitee.com/openeuler/kernel/issues/I4SK3S CVE: NA -------------------------------- Low-reliable memory is located in ZONE_MOVABLE, so gfp should contain GFP_HIGHMEM and GFP_MOVABLE when reclaim memory. Signed-off-by: Chen Wandun Reviewed-by: Kefeng Wang Signed-off-by: Yang Yingliang --- mm/vmscan.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/mm/vmscan.c b/mm/vmscan.c index 994c116306aa..b6afafdef507 100644 --- a/mm/vmscan.c +++ b/mm/vmscan.c @@ -4042,8 +4042,8 @@ unsigned long shrink_page_cache(gfp_t mask) { unsigned long nr_pages; - /* We reclaim the highmem zone too, it is useful for 32bit arch */ - nr_pages = __shrink_page_cache(mask | __GFP_HIGHMEM); + /* reclaim from movable zone */ + nr_pages = __shrink_page_cache(mask | __GFP_HIGHMEM | __GFP_MOVABLE); return nr_pages; } -- GitLab