[PATCH v5 0/5] Wire up getrandom() vDSO implementation on powerpc
Michael Ellerman
mpe at ellerman.id.au
Thu Sep 5 22:18:40 AEST 2024
"Jason A. Donenfeld" <Jason at zx2c4.com> writes:
> Hi Christophe, Michael,
>
> On Mon, Sep 02, 2024 at 09:17:17PM +0200, Christophe Leroy wrote:
>> This series wires up getrandom() vDSO implementation on powerpc.
>>
>> Tested on PPC32 on real hardware.
>> Tested on PPC64 (both BE and LE) on QEMU:
>>
>> Performance on powerpc 885:
>> ~# ./vdso_test_getrandom bench-single
>> vdso: 25000000 times in 62.938002291 seconds
>> libc: 25000000 times in 535.581916866 seconds
>> syscall: 25000000 times in 531.525042806 seconds
>>
>> Performance on powerpc 8321:
>> ~# ./vdso_test_getrandom bench-single
>> vdso: 25000000 times in 16.899318858 seconds
>> libc: 25000000 times in 131.050596522 seconds
>> syscall: 25000000 times in 129.794790389 seconds
>>
>> Performance on QEMU pseries:
>> ~ # ./vdso_test_getrandom bench-single
>> vdso: 25000000 times in 4.977777162 seconds
>> libc: 25000000 times in 75.516749981 seconds
>> syscall: 25000000 times in 86.842242014 seconds
>
> Looking good. I have no remaining nits on this patchset; it looks good
> to me.
>
> A review from Michael would be nice though (in addition to the necessary
> "Ack" I need to commit this to my tree), because there are a lot of PPC
> particulars that I don't know enough about to review properly. For
> example, you use -ffixed-r30 on PPC64. I'm sure there's a good reason
> for this, but I don't know enough to assess it. And cvdso_call I have no
> idea what's going on. Etc.
It all looks good to me, and has survived some testing. Let's get it
merged and get some wider test coverage.
There is an existing comment in the a/p/vdso/Makefile about the
fixed-r30 thing, tldr is it's a workaround to avoid breaking old
versions of Go.
For the series:
Acked-by: Michael Ellerman <mpe at ellerman.id.au> (powerpc)
If you can include Maddy's test results from Power9 in the change log
for patch 5 that'd be nice.
cheers
More information about the Linuxppc-dev
mailing list