Re: remove the last set_fs() in common code, and remove it for x86 and powerpc
From: Christoph Hellwig <hch@lst.de>
Date: 2020-08-18 18:06:04
Also in:
linux-arch, linux-fsdevel, lkml
From: Christoph Hellwig <hch@lst.de>
Date: 2020-08-18 18:06:04
Also in:
linux-arch, linux-fsdevel, lkml
On Tue, Aug 18, 2020 at 07:46:22PM +0200, Christophe Leroy wrote:
I gave it a go on my powerpc mpc832x. I tested it on top of my newest series that reworks the 32 bits signal handlers (see https://patchwork.ozlabs.org/project/linuxppc-dev/list/?series=196278) with the microbenchmark test used is that series. With KUAP activated, on top of signal32 rework, performance is boosted as system time for the microbenchmark goes from 1.73s down to 1.56s, that is 10% quicker Surprisingly, with the kernel as is today without my signal's series, your series degrades performance slightly (from 2.55s to 2.64s ie 3.5% slower). I also observe, in both cases, a degradation on dd if=/dev/zero of=/dev/null count=1M Without your series, it runs in 5.29 seconds. With your series, it runs in 5.82 seconds, that is 10% more time.
That's pretty strage, I wonder if some kernel text cache line
effects come into play here?
The kernel access side is only used in slow path code, so it should
not make a difference, and the uaccess code is simplified and should be
(marginally) faster.
Btw, was this with the __{get,put}_user_allowed cockup that you noticed
fixed?