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]
Date:   Tue, 7 Dec 2021 15:25:08 +0100
From:   Peter Zijlstra <peterz@...radead.org>
To:     Miklos Szeredi <miklos@...redi.hu>
Cc:     Ingo Molnar <mingo@...hat.com>, quic_stummala@...cinc.com,
        linux-kernel@...r.kernel.org, linux-fsdevel@...r.kernel.org,
        quic_pkondeti@...cinc.com, quic_sayalil@...cinc.com,
        quic_aiquny@...cinc.com, quic_zljing@...cinc.com,
        quic_blong@...cinc.com, quic_richardp@...cinc.com,
        quic_cdevired@...cinc.com,
        Pradeep P V K <quic_pragalla@...cinc.com>
Subject: Re: [PATCH V1] fuse: give wakeup hints to the scheduler

On Tue, Dec 07, 2021 at 03:03:01PM +0100, Miklos Szeredi wrote:
> On Tue, 7 Dec 2021 at 14:51, Peter Zijlstra <peterz@...radead.org> wrote:
> >
> > On Tue, Dec 07, 2021 at 02:45:49PM +0100, Peter Zijlstra wrote:
> >
> > > > What would be much nicer, is to look at all the threads on the waitq
> > > > and pick one that previously ran on the current CPU if there's one.
> > > > Could this be implemented?
> > >
> > > It would violate the FIFO semantics of _exclusive.
> >
> > That said, look at
> > kernel/locking/percpu-rwsem.c:percpu_rwsem_wake_function() for how to do
> > really terrible things with waitqueues, possibly including what you
> > suggest.
> 
> Okay, so it looks doable, but rather more involved than just sticking
> that _sync onto the wake helper.
> 
> FIFO is used so that we always wake the most recently used thread, right?
> 
> That makes sense if it doesn't involve migration, but if the hot
> thread is going to be moved to another CPU then we'd lost most of the
> advantages.  Am I missing something?

FIFO means the thread used longest ago gets to go first. If your threads
are an idempotent workers, FIFO might not be the best option. But I'm
not much familiar with the FUSE code or it's design.

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ