[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20240405025407.GF641486@cmpxchg.org>
Date: Thu, 4 Apr 2024 22:54:07 -0400
From: Johannes Weiner <hannes@...xchg.org>
To: Yosry Ahmed <yosryahmed@...gle.com>
Cc: Andrew Morton <akpm@...ux-foundation.org>,
Nhat Pham <nphamcs@...il.com>,
Chengming Zhou <chengming.zhou@...ux.dev>, linux-mm@...ck.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH v1 5/5] mm: zswap: do not check the global limit for
same-filled pages
On Fri, Apr 05, 2024 at 01:35:47AM +0000, Yosry Ahmed wrote:
> When storing same-filled pages, there is no point of checking the global
> zswap limit as storing them does not contribute toward the limit Move
> the limit checking after same-filled pages are handled.
>
> This avoids having same-filled pages skip zswap and go to disk swap if
> the limit is hit. It also avoids queueing the shrink worker, which may
> end up being unnecessary if the zswap usage goes down on its own before
> another store is attempted.
>
> Ignoring the memcg limits as well for same-filled pages is more
> controversial. Those limits are more a matter of per-workload policy.
> Some workloads disable zswap completely by setting memory.zswap.max = 0,
> and those workloads could start observing some zswap activity even after
> disabling zswap. Although harmless, this could cause confusion to
> userspace. Remain conservative and keep respecting those limits.
>
> Signed-off-by: Yosry Ahmed <yosryahmed@...gle.com>
I'm not sure this buys us enough in practice to justify special-casing
those entries even further. Especially with the quirk of checking
cgroup limits but not the global ones; that would definitely need a
code comment similar to what you have in the changelog; and once you
add that, the real estate this special treatment takes up really
doesn't seem reasonable anymore.
In most cases we'd expect a mix of pages to hit swap. Waking up the
shrinker on a zero-filled entry is not strictly necessary of course,
but the zswap limit has been reached and the system is swapping - a
wakeup seems imminent anyway.
Powered by blists - more mailing lists