1
0
Fork 0
mirror of synced 2025-03-06 20:59:54 +01:00
linux/arch/x86/entry/vdso
Jason A. Donenfeld 33385150ac x86: vdso: Wire up getrandom() vDSO implementation
Hook up the generic vDSO implementation to the x86 vDSO data page. Since
the existing vDSO infrastructure is heavily based on the timekeeping
functionality, which works over arrays of bases, a new macro is
introduced for vvars that are not arrays.

The vDSO function requires a ChaCha20 implementation that does not write
to the stack, yet can still do an entire ChaCha20 permutation, so
provide this using SSE2, since this is userland code that must work on
all x86-64 processors.

Reviewed-by: Thomas Gleixner <tglx@linutronix.de>
Reviewed-by: Samuel Neves <sneves@dei.uc.pt> # for vgetrandom-chacha.S
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2024-07-19 20:22:12 +02:00
..
vdso32 x86/vdso: Fake 32bit VDSO build on 64bit compile for vgetcpu 2023-02-07 18:20:41 +01:00
.gitignore .gitignore: add SPDX License Identifier 2020-03-25 11:50:48 +01:00
checkundef.sh x86/asm/entry, x86/vdso: Move the vDSO code to arch/x86/entry/vdso/ 2015-06-03 18:51:37 +02:00
extable.c x86/vdso: Add support for exception fixup in vDSO functions 2020-11-18 18:02:50 +01:00
extable.h x86/vdso: Add support for exception fixup in vDSO functions 2020-11-18 18:02:50 +01:00
Makefile x86: vdso: Wire up getrandom() vDSO implementation 2024-07-19 20:22:12 +02:00
vclock_gettime.c arch: vdso: consolidate gettime prototypes 2023-11-23 11:32:32 +01:00
vdso-layout.lds.S x86: Remove .fixup section 2021-12-11 09:09:50 +01:00
vdso-note.S x86: Add build salt to the vDSO 2018-07-18 01:18:05 +09:00
vdso.lds.S x86: vdso: Wire up getrandom() vDSO implementation 2024-07-19 20:22:12 +02:00
vdso2c.c treewide: Replace GPLv2 boilerplate/reference with SPDX - gpl-2.0_385.RULE 2022-06-10 14:51:36 +02:00
vdso2c.h x86/vdso: Move VDSO image init to vdso2c generated code 2023-01-25 12:33:40 +01:00
vdso32-setup.c x86/vdso: Remove now superfluous sentinel element from ctl_table array 2023-10-10 15:22:02 -07:00
vdsox32.lds.S x86/vdso: Switch to generic vDSO implementation 2019-06-22 21:21:10 +02:00
vgetcpu.c x86/vdso: Include vdso/processor.h 2023-05-18 11:56:18 -07:00
vgetrandom-chacha.S x86: vdso: Wire up getrandom() vDSO implementation 2024-07-19 20:22:12 +02:00
vgetrandom.c x86: vdso: Wire up getrandom() vDSO implementation 2024-07-19 20:22:12 +02:00
vma.c x86/vdso: Move vDSO to mmap region 2024-02-27 00:23:55 +01:00
vsgx.S x86/headers: Remove unnecessary #include <asm/export.h> 2023-10-03 10:38:07 +02:00