[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <0a052cb1-a5c5-4bee-5bd5-fd5569765012@google.com>
Date: Sat, 23 Dec 2023 19:01:14 -0800 (PST)
From: David Rientjes <rientjes@...gle.com>
To: Chris Li <chrisl@...nel.org>
cc: Andrew Morton <akpm@...ux-foundation.org>, linux-kernel@...r.kernel.org,
linux-mm@...ck.org, Wei Xu <weixugc@...gle.com>,
Yu Zhao <yuzhao@...gle.com>, Greg Thelen <gthelen@...gle.com>,
Chun-Tse Shao <ctshao@...gle.com>, Suren Baghdasaryan <surenb@...gle.com>,
Yosry Ahmed <yosryahmed@...gle.com>, Brain Geffon <bgeffon@...gle.com>,
Minchan Kim <minchan@...nel.org>, Michal Hocko <mhocko@...e.com>,
Mel Gorman <mgorman@...hsingularity.net>,
Huang Ying <ying.huang@...el.com>, Nhat Pham <nphamcs@...il.com>,
Johannes Weiner <hannes@...xchg.org>, Kairui Song <kasong@...cent.com>,
Zhongkun He <hezhongkun.hzk@...edance.com>,
Kemeng Shi <shikemeng@...weicloud.com>, Barry Song <v-songbaohua@...o.com>,
Hugh Dickins <hughd@...gle.com>
Subject: Re: [PATCH] mm: swap: async free swap slot cache entries
On Sat, 23 Dec 2023, Chris Li wrote:
> > How do you quantify the impact of the delayed swap_entry_free()?
> >
> > Since the free and memcg uncharge are now delayed, is there not the
> > possibility that we stay under memory pressure for longer? (Assuming at
> > least some users are swapping because of memory pressure.)
> >
> > I would assume that since the free and uncharge itself is delayed that in
> > the pathological case we'd actually be swapping *more* until the async
> > worker can run.
>
> Thanks for raising this interesting question.
>
> First of all, the swap_entry_free() does not impact "memory.current".
> It reduces "memory.swap.current". Technically it is the swap pressure
> not memory pressure that suffers the extra delay.
>
> Secondly, we are talking about delaying up to 64 swap entries for a
> few microseconds.
What guarantees that the async freeing happens within a few microseconds?
> Where the swap slot cache itself delays the freeing
> of the entries for an arbitrary amount of time. It is not freed until
> the cache is full of 64 entries. This delay can be seconds or even
> minutes. Adding a few microseconds of extra delay to existing seconds
> delay really makes no difference from the swap pressure point of view.
>
> Chris
>
Powered by blists - more mailing lists