v3: - rebase on Linus' patch (v6.12-rc5)
- remove putuser(), copy_to_user(), clear_user() changes: as Linus points out, they don't produce a value that could be used in a dependent load to leak anything. - convert 32-bit versions of copy_from_user(), get_user() and __get_user() and converge code. Josh Poimboeuf (6): x86/uaccess: Avoid barrier_nospec() in 64-bit copy_from_user() x86/uaccess: Avoid barrier_nospec() in 64-bit __get_user() x86/uaccess: Avoid barrier_nospec() in 32-bit copy_from_user() x86/uaccess: Convert 32-bit get_user() to unconditional pointer masking x86/uaccess: Avoid barrier_nospec() in 32-bit __get_user() x86/uaccess: Converge [__]get_user() implementations arch/powerpc/include/asm/uaccess.h | 2 + arch/x86/include/asm/uaccess.h | 34 ++++++++++++ arch/x86/include/asm/uaccess_32.h | 1 + arch/x86/include/asm/uaccess_64.h | 30 +---------- arch/x86/lib/getuser.S | 85 ++++++++---------------------- include/linux/uaccess.h | 6 --- 6 files changed, 61 insertions(+), 97 deletions(-) -- 2.47.0