• Jason A. Donenfeld's avatar
    x86: vdso: Wire up getrandom() vDSO implementation · 33385150
    Jason A. Donenfeld authored
    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: default avatarThomas Gleixner <tglx@linutronix.de>
    Reviewed-by: Samuel Neves <sneves@dei.uc.pt> # for vgetrandom-chacha.S
    Signed-off-by: default avatarJason A. Donenfeld <Jason@zx2c4.com>
    33385150
getrandom.h 1.82 KB