[Some people who received this message don't often get email from mhocko@xxxxxxxx. Learn why this is important at https://aka.ms/LearnAboutSenderIdentification ]When an application is frozen, it usually means that we predict that it will not be
On Wed 08-11-23 14:58:11, Huan Yang wrote:
In some cases, we need to selectively reclaim file pages or anonymousCould you explain why? And also why do you need to swap out in that
pages in an unbalanced manner.
For example, when an application is pushed to the background and frozen,
it may not be opened for a long time, and we can safely reclaim the
application's anonymous pages, but we do not want to touch the file pages.
case?
So, maybe pass swappiness into sc and keep a single reclamation ensure that
This patchset extends the proactive reclaim interface to achieveOther have already touched on this in other replies but v2 doesn't have
unbalanced reclamation. Users can control the reclamation tendency by
inputting swappiness under the original interface. Specifically, users
can input special values to extremely reclaim specific pages.
a per-memcg swappiness
Example:In general this is a bad semantic. The operation shouldn't have side
echo "1G" 200 > memory.reclaim (only reclaim anon)
echo "1G" 0 > memory.reclaim (only reclaim file)
echo "1G" 1 > memory.reclaim (only reclaim file)
Note that when performing unbalanced reclamation, the cgroup swappiness
will be temporarily adjusted dynamically to the input value. Therefore,
if the cgroup swappiness is further modified during runtime, there may
be some errors.
effect that are potentially visible for another operation.
--
Michal Hocko
SUSE Labs