mirror of
https://github.com/tbsdtv/linux_media.git
synced 2025-07-23 12:43:29 +02:00
mm/vmscan: take min_slab_pages into account when try to call shrink_node
Since commit 6b4f7799c6
("mm: vmscan: invoke slab shrinkers from
shrink_zone()"), slab reclaim and lru page reclaim are done together in
the shrink_node. So we should take min_slab_pages into account when try
to call shrink_node.
Link: https://lkml.kernel.org/r/20220425112118.20924-1-linmiaohe@huawei.com
Signed-off-by: Miaohe Lin <linmiaohe@huawei.com>
Cc: Huang Ying <ying.huang@intel.com>
Cc: Christoph Hellwig <hch@infradead.org>
Cc: Johannes Weiner <hannes@cmpxchg.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
This commit is contained in:
committed by
Andrew Morton
parent
448b8ec3bf
commit
d8ff6fde8e
@@ -4713,7 +4713,8 @@ static int __node_reclaim(struct pglist_data *pgdat, gfp_t gfp_mask, unsigned in
|
|||||||
noreclaim_flag = memalloc_noreclaim_save();
|
noreclaim_flag = memalloc_noreclaim_save();
|
||||||
set_task_reclaim_state(p, &sc.reclaim_state);
|
set_task_reclaim_state(p, &sc.reclaim_state);
|
||||||
|
|
||||||
if (node_pagecache_reclaimable(pgdat) > pgdat->min_unmapped_pages) {
|
if (node_pagecache_reclaimable(pgdat) > pgdat->min_unmapped_pages ||
|
||||||
|
node_page_state_pages(pgdat, NR_SLAB_RECLAIMABLE_B) > pgdat->min_slab_pages) {
|
||||||
/*
|
/*
|
||||||
* Free memory by calling shrink node with increasing
|
* Free memory by calling shrink node with increasing
|
||||||
* priorities until we have enough memory freed.
|
* priorities until we have enough memory freed.
|
||||||
|
Reference in New Issue
Block a user