linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v3 0/6] x86/uaccess: avoid barrier_nospec()
@ 2024-10-29  1:56 Josh Poimboeuf
  2024-10-29  1:56 ` [PATCH v3 1/6] x86/uaccess: Avoid barrier_nospec() in 64-bit copy_from_user() Josh Poimboeuf
                   ` (5 more replies)
  0 siblings, 6 replies; 29+ messages in thread
From: Josh Poimboeuf @ 2024-10-29  1:56 UTC (permalink / raw)
  To: x86
  Cc: linux-kernel, Thomas Gleixner, Borislav Petkov, Peter Zijlstra,
	Pawan Gupta, Waiman Long, Dave Hansen, Ingo Molnar,
	Linus Torvalds, Michael Ellerman, linuxppc-dev, Andrew Cooper,
	Mark Rutland, Kirill A . Shutemov

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



^ permalink raw reply	[flat|nested] 29+ messages in thread

end of thread, other threads:[~2024-11-24 18:16 UTC | newest]

Thread overview: 29+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-10-29  1:56 [PATCH v3 0/6] x86/uaccess: avoid barrier_nospec() Josh Poimboeuf
2024-10-29  1:56 ` [PATCH v3 1/6] x86/uaccess: Avoid barrier_nospec() in 64-bit copy_from_user() Josh Poimboeuf
2024-10-29  8:13   ` Kirill A . Shutemov
2024-10-30  2:03   ` Linus Torvalds
2024-10-30  4:59     ` Josh Poimboeuf
2024-10-29  1:56 ` [PATCH v3 2/6] x86/uaccess: Avoid barrier_nospec() in 64-bit __get_user() Josh Poimboeuf
2024-10-29  3:27   ` Josh Poimboeuf
2024-11-08 17:12     ` David Laight
2024-11-15 23:06       ` 'Josh Poimboeuf'
2024-11-16  1:27         ` Linus Torvalds
2024-11-16 21:38           ` David Laight
2024-11-16 23:08             ` Linus Torvalds
2024-11-21 21:40           ` Josh Poimboeuf
2024-11-21 22:16             ` Linus Torvalds
2024-11-22  0:12               ` Josh Poimboeuf
2024-11-22  1:02                 ` Linus Torvalds
2024-11-22  3:11                   ` Josh Poimboeuf
2024-11-22  3:57                     ` Linus Torvalds
2024-11-22  9:06                       ` Christophe Leroy
2024-11-22 18:16                         ` Linus Torvalds
2024-11-22 19:13                       ` Linus Torvalds
2024-11-22 19:35                         ` Linus Torvalds
2024-11-24 16:11                           ` David Laight
2024-11-24 18:16                             ` Linus Torvalds
2024-11-22  9:38               ` David Laight
2024-10-29  1:56 ` [PATCH v3 3/6] x86/uaccess: Avoid barrier_nospec() in 32-bit copy_from_user() Josh Poimboeuf
2024-10-29  1:56 ` [PATCH v3 4/6] x86/uaccess: Convert 32-bit get_user() to unconditional pointer masking Josh Poimboeuf
2024-10-29  1:56 ` [PATCH v3 5/6] x86/uaccess: Avoid barrier_nospec() in 32-bit __get_user() Josh Poimboeuf
2024-10-29  1:56 ` [PATCH v3 6/6] x86/uaccess: Converge [__]get_user() implementations Josh Poimboeuf

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).