Files
linux/mm
Yu Zhao 6573287e54 BACKPORT: mm: multi-gen LRU: clarify scan_control flags
Among the flags in scan_control:
1. sc->may_swap, which indicates swap constraint due to memsw.max, is
   supported as usual.
2. sc->proactive, which indicates reclaim by memory.reclaim, may not
   opportunistically skip the aging path, since it is considered less
   latency sensitive.
3. !(sc->gfp_mask & __GFP_IO), which indicates IO constraint, lowers
   swappiness to prioritize file LRU, since clean file folios are more
   likely to exist.
4. sc->may_writepage and sc->may_unmap, which indicates opportunistic
   reclaim, are rejected, since unmapped clean folios are already
   prioritized. Scanning for more of them is likely futile and can
   cause high reclaim latency when there is a large number of memcgs.

The rest are handled by the existing code.

Link: https://lkml.kernel.org/r/20221222041905.2431096-8-yuzhao@google.com
Signed-off-by: Yu Zhao <yuzhao@google.com>
Cc: Johannes Weiner <hannes@cmpxchg.org>
Cc: Jonathan Corbet <corbet@lwn.net>
Cc: Michael Larabel <Michael@MichaelLarabel.com>
Cc: Michal Hocko <mhocko@kernel.org>
Cc: Mike Rapoport <rppt@kernel.org>
Cc: Roman Gushchin <roman.gushchin@linux.dev>
Cc: Suren Baghdasaryan <surenb@google.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Bug: 274865848
(cherry picked from commit e9d4e1ee78)
[TJ: Resolved conflict with older function signature for min_cgroup_below_min, and over
cdded86118 ("ANDROID: MGLRU: Don't skip anon reclaim if swap low")]
Change-Id: Ic2e779eaf4e91a3921831b4e2fa10c740dc59d50
Signed-off-by: T.J. Mercier <tjmercier@google.com>
2023-03-30 10:23:50 +00:00
..
2023-02-22 12:32:41 +00:00
2023-01-04 11:28:59 +01:00
2023-02-01 09:12:59 +00:00
2022-09-26 19:46:26 -07:00
2022-10-03 14:02:53 -07:00
2022-09-26 19:46:16 -07:00
2022-10-03 14:02:53 -07:00
2023-02-09 13:29:55 +00:00
2023-02-09 13:29:55 +00:00
2022-06-16 19:48:30 -07:00
2023-02-22 12:32:41 +00:00
2022-09-26 19:46:09 -07:00
2022-10-03 14:02:43 -07:00
2022-09-26 19:46:09 -07:00
2023-01-24 07:24:33 +01:00
2023-03-23 18:20:34 +00:00
2023-03-23 18:21:07 +00:00
2022-10-03 14:02:45 -07:00
2022-10-03 14:02:51 -07:00
2023-03-23 18:20:34 +00:00
2022-10-03 14:02:45 -07:00
2023-03-23 18:20:34 +00:00