[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <86b0eb6a-9a16-44f5-8ff0-5003624f107e@efficios.com>
Date: Wed, 10 Sep 2025 10:45:33 -0400
From: Michael Jeanson <mjeanson@...icios.com>
To: Jens Axboe <axboe@...nel.dk>, Thomas Gleixner <tglx@...utronix.de>,
LKML <linux-kernel@...r.kernel.org>
Cc: Mathieu Desnoyers <mathieu.desnoyers@...icios.com>,
Peter Zijlstra <peterz@...radead.org>, "Paul E. McKenney"
<paulmck@...nel.org>, Boqun Feng <boqun.feng@...il.com>,
Paolo Bonzini <pbonzini@...hat.com>, Sean Christopherson
<seanjc@...gle.com>, Wei Liu <wei.liu@...nel.org>,
Dexuan Cui <decui@...rosoft.com>, x86@...nel.org,
Arnd Bergmann <arnd@...db.de>, Heiko Carstens <hca@...ux.ibm.com>,
Christian Borntraeger <borntraeger@...ux.ibm.com>,
Sven Schnelle <svens@...ux.ibm.com>, Huacai Chen <chenhuacai@...nel.org>,
Paul Walmsley <paul.walmsley@...ive.com>, Palmer Dabbelt <palmer@...belt.com>
Subject: Re: [patch V4 00/36] rseq: Optimize exit to user space
On 2025-09-10 09:55, Jens Axboe wrote:
> On 9/8/25 3:31 PM, Thomas Gleixner wrote:
>> For your convenience all of it is also available as a conglomerate from
>> git:
>>
>> git://git.kernel.org/pub/scm/linux/kernel/git/tglx/devel.git rseq/perf
>
> I used this branch for some quick testing. Since I last looked at the
> rseq performance overhead, glibc must have improved a few things. FWIW,
> box is running libc 2.41 at the moment. Test box is on debian unstable,
> so gets frequent updates. In any case, for one of my usual kernel
> overhead runs of checking running a basic IOPS based test, I see the
> following on the stock (-rc5 + 6.18 targeted changes) kernel running
> that test:
>
> + 0.89% io_uring [kernel.kallsyms] [k] __get_user_8
> + 0.58% io_uring [kernel.kallsyms] [k] __put_user_8
> + 1.13% io_uring [kernel.kallsyms] [k] __rseq_handle_notify_resume
>
> which is about 2.6% of purely rseq related overhead. Pulling in the
> above branch and running the exact same test, all of the above are gone
> and perusing the profile has nothing jump out at me in terms of shifting
> those cycles to other bookkeeping.
>
> So yes, this work does make a very noticeable difference!
If you have time, could you also run the same test on this branch with
glibc rseq registration disabled, just to see of there is some noticable
differences.
To disable glibc automatic registration, just export this variable:
GLIBC_TUNABLES="glibc.pthread.rseq=0"
Thanks!
Powered by blists - more mailing lists