| From: |
| Thomas Gleixner <tglx-AT-linutronix.de> |
| To: |
| LKML <linux-kernel-AT-vger.kernel.org> |
| Subject: |
| [patch V4 00/12] uaccess: Provide and use scopes for user access |
| Date: |
| Wed, 22 Oct 2025 14:49:02 +0200 |
| Message-ID: |
| <20251022102427.400699796@linutronix.de> |
| Cc: |
| kernel test robot <lkp-AT-intel.com>, Russell King <linux-AT-armlinux.org.uk>, linux-arm-kernel-AT-lists.infradead.org, Linus Torvalds <torvalds-AT-linux-foundation.org>, x86-AT-kernel.org, Madhavan Srinivasan <maddy-AT-linux.ibm.com>, Michael Ellerman <mpe-AT-ellerman.id.au>, Nicholas Piggin <npiggin-AT-gmail.com>, Christophe Leroy <christophe.leroy-AT-csgroup.eu>, linuxppc-dev-AT-lists.ozlabs.org, Paul Walmsley <pjw-AT-kernel.org>, Palmer Dabbelt <palmer-AT-dabbelt.com>, linux-riscv-AT-lists.infradead.org, Heiko Carstens <hca-AT-linux.ibm.com>, Christian Borntraeger <borntraeger-AT-linux.ibm.com>, Sven Schnelle <svens-AT-linux.ibm.com>, linux-s390-AT-vger.kernel.org, Mathieu Desnoyers <mathieu.desnoyers-AT-efficios.com>, Andrew Cooper <andrew.cooper3-AT-citrix.com>, David Laight <david.laight.linux-AT-gmail.com>, Julia Lawall <Julia.Lawall-AT-inria.fr>, Nicolas Palix <nicolas.palix-AT-imag.fr>, Peter Zijlstra <peterz-AT-infradead.org>, Darren Hart <dvhart-AT-infradead.org>, Davidlohr Bueso <dave-AT-stgolabs.net>, André Almeida <andrealmeid-AT-igalia.com>, Alexander Viro <viro-AT-zeniv.linux.org.uk>, Christian Brauner <brauner-AT-kernel.org>, Jan Kara <jack-AT-suse.cz>, linux-fsdevel-AT-vger.kernel.org |
| Archive-link: |
| Article |
This is a follow up on the V3 feedback:
https://lore.kernel.org/20251017085938.150569636@linutron...
Changes vs. V3:
- Remove the superflouous if (1) in the scope macro - Andrew
- Use asm_inline in the x86 conversion - Andrew
- Rename to scoped_user_*_access(), remove underscores, use a void
intermediate pointer and add a comment vs. access range - David
- Use read scope in select - PeterZ
- Fix comments, shorten local variables and remove pointless brackets -
Mathieu
- Simplify the coccinelle script, which needs still more polishing -
Julia
The series is based on v6.18-rc1 and also available from git:
git://git.kernel.org/pub/scm/linux/kernel/git/tglx/devel.git uaccess/masked
Thanks,
tglx
---
Thomas Gleixner (12):
ARM: uaccess: Implement missing __get_user_asm_dword()
uaccess: Provide ASM GOTO safe wrappers for unsafe_*_user()
x86/uaccess: Use unsafe wrappers for ASM GOTO
powerpc/uaccess: Use unsafe wrappers for ASM GOTO
riscv/uaccess: Use unsafe wrappers for ASM GOTO
s390/uaccess: Use unsafe wrappers for ASM GOTO
uaccess: Provide scoped user access regions
uaccess: Provide put/get_user_scoped()
coccinelle: misc: Add scoped_$MODE_access() checker script
futex: Convert to scoped user access
x86/futex: Convert to scoped user access
select: Convert to scoped user access
---
arch/arm/include/asm/uaccess.h | 26 ++
arch/powerpc/include/asm/uaccess.h | 8
arch/riscv/include/asm/uaccess.h | 8
arch/s390/include/asm/uaccess.h | 4
arch/x86/include/asm/futex.h | 75 ++----
arch/x86/include/asm/uaccess.h | 12 -
fs/select.c | 12 -
include/linux/uaccess.h | 308 ++++++++++++++++++++++++++-
kernel/futex/futex.h | 37 ---
scripts/coccinelle/misc/scoped_uaccess.cocci | 108 +++++++++
10 files changed, 492 insertions(+), 106 deletions(-)