powerpc/vdso: Wire up getrandom() vDSO implementation on VDSO64
authorChristophe Leroy <christophe.leroy@csgroup.eu>
Mon, 2 Sep 2024 19:17:22 +0000 (21:17 +0200)
committerJason A. Donenfeld <Jason@zx2c4.com>
Fri, 13 Sep 2024 15:28:36 +0000 (17:28 +0200)
commit8072b39c3a75b63bc08737a74b24c263b7909ba0
tree3bea24a4f90f378ab2bd82b916a47700c15771c4
parent53cee505ae0c4d19a2c894501a363782410c4a29
powerpc/vdso: Wire up getrandom() vDSO implementation on VDSO64

Extend getrandom() vDSO implementation to VDSO64.

Tested on QEMU on both ppc64_defconfig and ppc64le_defconfig.

Results from a Power9 (PowerNV):
~ # ./vdso_test_getrandom bench-single
   vdso: 25000000 times in 0.787943615 seconds
   libc: 25000000 times in 14.101887252 seconds
   syscall: 25000000 times in 14.047475082 seconds

Signed-off-by: Christophe Leroy <christophe.leroy@csgroup.eu>
Tested-by: Madhavan Srinivasan <maddy@linux.ibm.com>
Acked-by: Michael Ellerman <mpe@ellerman.id.au>
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
arch/powerpc/Kconfig
arch/powerpc/kernel/vdso/Makefile
arch/powerpc/kernel/vdso/getrandom.S
arch/powerpc/kernel/vdso/vdso64.lds.S
arch/powerpc/kernel/vdso/vgetrandom-chacha.S