lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <d171f8a4-47ed-0e29-877d-6824d593d7ed@google.com>
Date: Sun, 24 Dec 2023 13:13:35 -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 Sun, 24 Dec 2023, Chris Li wrote:

> On Sat, Dec 23, 2023 at 7:01 PM David Rientjes <rientjes@...gle.com> wrote:
> >
> > 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?
> 
> Linux kernel typically doesn't provide RT scheduling guarantees. You
> can change microseconds to milliseconds, my following reasoning still
> holds.
> 

What guarantees that the async freeing happens even within 10s?  Your 
responses are implying that there is some deadline by which this freeing 
absolutely must happen (us or ms), but I don't know of any strong 
guarantees.

If there are no absolute guarantees about when the freeing may now occur, 
I'm asking how the impact of the delayed swap_entry_free() can be 
quantified.

The benefit to the current implementation is that there *are* strong 
guarantees about when the freeing will occur and cannot grow exponentially 
before the async worker can do the freeing.

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ