On Tue, Jun 11, 2024 at 07:05:21AM +0900, Masami Hiramatsu wrote: > On Thu, 23 May 2024 14:11:42 +0200 > Jiri Olsa <jolsa@xxxxxxxxxx> wrote: > > > Wiring up uretprobe system call, which comes in following changes. > > We need to do the wiring before, because the uretprobe implementation > > needs the syscall number. > > > > Note at the moment uretprobe syscall is supported only for native > > 64-bit process. > > > > BTW, this does not cleanly applied to probes/for-next, based on > 6.10-rc1. Which version did you use? ah new syscall just got merged, I'll rebase and send new version jirka > > Thank you, > > > Reviewed-by: Oleg Nesterov <oleg@xxxxxxxxxx> > > Reviewed-by: Masami Hiramatsu (Google) <mhiramat@xxxxxxxxxx> > > Acked-by: Andrii Nakryiko <andrii@xxxxxxxxxx> > > Signed-off-by: Jiri Olsa <jolsa@xxxxxxxxxx> > > --- > > arch/x86/entry/syscalls/syscall_64.tbl | 1 + > > include/linux/syscalls.h | 2 ++ > > include/uapi/asm-generic/unistd.h | 5 ++++- > > kernel/sys_ni.c | 2 ++ > > 4 files changed, 9 insertions(+), 1 deletion(-) > > > > diff --git a/arch/x86/entry/syscalls/syscall_64.tbl b/arch/x86/entry/syscalls/syscall_64.tbl > > index cc78226ffc35..47dfea0a827c 100644 > > --- a/arch/x86/entry/syscalls/syscall_64.tbl > > +++ b/arch/x86/entry/syscalls/syscall_64.tbl > > @@ -383,6 +383,7 @@ > > 459 common lsm_get_self_attr sys_lsm_get_self_attr > > 460 common lsm_set_self_attr sys_lsm_set_self_attr > > 461 common lsm_list_modules sys_lsm_list_modules > > +462 64 uretprobe sys_uretprobe > > > > # > > # Due to a historical design error, certain syscalls are numbered differently > > diff --git a/include/linux/syscalls.h b/include/linux/syscalls.h > > index e619ac10cd23..5318e0e76799 100644 > > --- a/include/linux/syscalls.h > > +++ b/include/linux/syscalls.h > > @@ -972,6 +972,8 @@ asmlinkage long sys_lsm_list_modules(u64 *ids, u32 *size, u32 flags); > > /* x86 */ > > asmlinkage long sys_ioperm(unsigned long from, unsigned long num, int on); > > > > +asmlinkage long sys_uretprobe(void); > > + > > /* pciconfig: alpha, arm, arm64, ia64, sparc */ > > asmlinkage long sys_pciconfig_read(unsigned long bus, unsigned long dfn, > > unsigned long off, unsigned long len, > > diff --git a/include/uapi/asm-generic/unistd.h b/include/uapi/asm-generic/unistd.h > > index 75f00965ab15..8a747cd1d735 100644 > > --- a/include/uapi/asm-generic/unistd.h > > +++ b/include/uapi/asm-generic/unistd.h > > @@ -842,8 +842,11 @@ __SYSCALL(__NR_lsm_set_self_attr, sys_lsm_set_self_attr) > > #define __NR_lsm_list_modules 461 > > __SYSCALL(__NR_lsm_list_modules, sys_lsm_list_modules) > > > > +#define __NR_uretprobe 462 > > +__SYSCALL(__NR_uretprobe, sys_uretprobe) > > + > > #undef __NR_syscalls > > -#define __NR_syscalls 462 > > +#define __NR_syscalls 463 > > > > /* > > * 32 bit systems traditionally used different > > diff --git a/kernel/sys_ni.c b/kernel/sys_ni.c > > index faad00cce269..be6195e0d078 100644 > > --- a/kernel/sys_ni.c > > +++ b/kernel/sys_ni.c > > @@ -391,3 +391,5 @@ COND_SYSCALL(setuid16); > > > > /* restartable sequence */ > > COND_SYSCALL(rseq); > > + > > +COND_SYSCALL(uretprobe); > > -- > > 2.45.1 > > > > > -- > Masami Hiramatsu (Google) <mhiramat@xxxxxxxxxx>