Skip to content

Commit 3c1da7b

Browse files
Vladimir Davydovtorvalds
authored andcommitted
mm/vmpressure.c: fix subtree pressure detection
When vmpressure is called for the entire subtree under pressure we mistakenly use vmpressure->scanned instead of vmpressure->tree_scanned when checking if vmpressure work is to be scheduled. This results in suppressing all vmpressure events in the legacy cgroup hierarchy. Fix it. Fixes: 8e8ae64 ("mm: memcontrol: hook up vmpressure to socket pressure") Signed-off-by: Vladimir Davydov <[email protected]> Acked-by: Johannes Weiner <[email protected]> Acked-by: Michal Hocko <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
1 parent 30bdbb7 commit 3c1da7b

File tree

1 file changed

+1
-2
lines changed

1 file changed

+1
-2
lines changed

mm/vmpressure.c

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -248,9 +248,8 @@ void vmpressure(gfp_t gfp, struct mem_cgroup *memcg, bool tree,
248248

249249
if (tree) {
250250
spin_lock(&vmpr->sr_lock);
251-
vmpr->tree_scanned += scanned;
251+
scanned = vmpr->tree_scanned += scanned;
252252
vmpr->tree_reclaimed += reclaimed;
253-
scanned = vmpr->scanned;
254253
spin_unlock(&vmpr->sr_lock);
255254

256255
if (scanned < vmpressure_win)

0 commit comments

Comments
 (0)