[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAHk-=wjkn=yL6vy5s7ZFgBfDybD3Gjg9C72zXchy-JF0Tp+a+A@mail.gmail.com>
Date: Thu, 27 Jun 2024 09:57:13 -0700
From: Linus Torvalds <torvalds@...ux-foundation.org>
To: Mateusz Guzik <mjguzik@...il.com>
Cc: kernel test robot <oliver.sang@...el.com>, oe-lkp@...ts.linux.dev, lkp@...el.com,
Linux Memory Management List <linux-mm@...ck.org>, Christian Brauner <brauner@...nel.org>, linux-kernel@...r.kernel.org,
ying.huang@...el.com, feng.tang@...el.com, fengwei.yin@...el.com
Subject: Re: [linux-next:master] [lockref] d042dae6ad: unixbench.throughput
-33.7% regression
On Thu, 27 Jun 2024 at 09:32, Linus Torvalds
<torvalds@...ux-foundation.org> wrote:
>
> getdent subtest:
> +4.1 lockref_put_return
> +5.7 lockref_get_not_dead
> +68.0 native_queued_spin_lock_slowpath
For this getdents load, the main call chains that terminate in the
queued spinlock case seem to be
.lockref_get_not_dead.__legitimize_path.try_to_unlazy_next.lookup_fast
.lockref_get_not_dead.__legitimize_path.try_to_unlazy.lookup_fast
.lockref_get_not_dead.__legitimize_path.try_to_unlazy.link_path_walk
.dput.terminate_walk.path_openat.do_filp_open
which is interesting because I would have expected the readdir() code
itself to show up.
But the proc_pident_readdir profiles have all gone down, presumably
because there's just much fewer of them. That part shows no spinlock
in the profile at all.
WTH is that benchmark doing? The only readdir that shows up is for
what looks like some /proc filesystem thing.
Linus
Powered by blists - more mailing lists