Re: [patch 06/18] riscv/syscall: Use syscall_enter_from_user_mode_randomize_stack()
Mukesh Kumar Chaurasiya <[email protected]> Fri, 10 Jul 2026 00:12:23 +0530
| Newsgroups | gmane.linux.ports.ppc.embedded,gmane.linux.kernel,gmane.linux.ports.riscv,gmane.linux.ports.arm.kernel,gmane.linux.ports.alpha,gmane.linux.ports.mips,gmane.linux.ports.parisc,gmane.linux.ports.sh.devel,gmane.linux.uml.devel,gmane.linux.kernel.arc,gmane.linux.ports.hexagon,gmane.linux.ports.sparc,gmane.linux.kernel.cross-arch,gmane.linux.documentation |
|---|---|
| Message-ID | <[email protected]> |
On Tue, Jul 07, 2026 at 09:06:19PM +0200, Thomas Gleixner wrote: > syscall_enter_from_user_mode_randomize_stack() replaces > syscall_enter_from_user_mode() and the subsequent invocation of > add_random_kstack_offset(). > > The advantage is that it applies the stack randomization right after > enter_from_user_mode() and thereby avoids the overhead of get/put_cpu_var() > as that code is invoked with interrupts disabled. > > No functional change. > > Signed-off-by: Thomas Gleixner <[email protected]> > Cc: Paul Walmsley <[email protected]> > Cc: Palmer Dabbelt <[email protected]> > Cc: [email protected] > --- > arch/riscv/kernel/traps.c | 5 +---- > 1 file changed, 1 insertion(+), 4 deletions(-) > > --- a/arch/riscv/kernel/traps.c > +++ b/arch/riscv/kernel/traps.c > @@ -7,7 +7,6 @@ > #include <linux/kernel.h> > #include <linux/init.h> > #include <linux/irqflags.h> > -#include <linux/randomize_kstack.h> > #include <linux/sched.h> > #include <linux/sched/debug.h> > #include <linux/sched/signal.h> > @@ -333,9 +332,7 @@ void do_trap_ecall_u(struct pt_regs *reg > > riscv_v_vstate_discard(regs); > > - syscall = syscall_enter_from_user_mode(regs, syscall); > - > - add_random_kstack_offset(); > + syscall = syscall_enter_from_user_mode_randomize_stack(regs, syscall); > > if (syscall >= 0 && syscall < NR_syscalls) { > syscall = array_index_nospec(syscall, NR_syscalls); > Reviewed-by: Mukesh Kumar Chaurasiya (IBM) <[email protected]>