Re: [PATCH] tracing/x86: Update syscall trace events to handle new x86 syscall func names

From: Steven Rostedt
Date: Tue Apr 17 2018 - 12:57:30 EST


On Tue, 17 Apr 2018 12:40:19 -0400
Steven Rostedt <rostedt@xxxxxxxxxxx> wrote:

> On Tue, 17 Apr 2018 13:35:27 -0300
> Arnaldo Carvalho de Melo <acme@xxxxxxxxxx> wrote:
>
>
> > [root@jouet ~]# perf test openat
> > 2: Detect openat syscall event : Ok
> > 3: Detect openat syscall event on all cpus : Ok
> > 15: syscalls:sys_enter_openat event fields : Ok
> > [root@jouet ~]#
> >
> > [root@jouet ~]# perf trace -e nanosleep,syscalls:*nanosleep sleep 1
> > 0.000 ( ): syscalls:sys_enter_nanosleep:rqtp: 0x7ffd9f737950, rmtp: 0x00000000
> > 0.009 ( ): sleep/7905 nanosleep(rqtp: 0x7ffd9f737950 ) ...
> > 1000.204 ( ): syscalls:sys_exit_nanosleep:0x0
> > 0.009 (1000.217 ms): sleep/7905 ... [continued]: nanosleep()) = 0
> > [root@jouet ~]#
> >
> > Works, so the regression seems to be fixed, without looking at the code
> > that much:
> >
> > Tested-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
>
> But does this still work on x86_32? I'll test that out. Thanks for
> testing, but I may have another patch soon.

OK, it's still broken there with this patch. I got this:

# ls /sys/kernel/tracing/events/syscalls
enable
filter
sys_enter_nanosleep
sys_exit_nanosleep

But with this:

return !strcmp(sym + 9, name + 3) || !strcmp(sym + 3, name + 3);

I get all the syscalls back. I'll make another patch.

-- Steve