Re: [FYI][PATCH 1/1] tools headers UAPI: Sync powerpc syscall table file changed by new futex_waitv syscall
From: Arnaldo Carvalho de Melo
Date: Tue Nov 30 2021 - 08:35:43 EST
Em Fri, Nov 26, 2021 at 03:19:32PM +0530, Athira Rajeev escreveu:
>
>
> > On 26-Nov-2021, at 2:12 AM, Arnaldo Carvalho de Melo <acme@xxxxxxxxxx> wrote:
> >
> > To pick the changes in this cset:
> >
> > a0eb2da92b715d0c ("futex: Wireup futex_waitv syscall")
> >
> > That add support for this new syscall in tools such as 'perf trace'.
> >
> > For instance, this is now possible (adapted from the x86_64 test output):
> >
> > # perf trace -e futex_waitv
> > ^C#
> > # perf trace -v -e futex_waitv
> > event qualifier tracepoint filter: (common_pid != 807333 && common_pid != 3564) && (id == 449)
> > ^C#
> > # perf trace -v -e futex* --max-events 10
> > event qualifier tracepoint filter: (common_pid != 812168 && common_pid != 3564) && (id == 221 || id == 449)
> > mmap size 528384B
> > ? ( ): Timer/219310 ... [continued]: futex()) = -1 ETIMEDOUT (Connection timed out)
> > 0.012 ( 0.002 ms): Timer/219310 futex(uaddr: 0x7fd0b152d3c8, op: WAKE|PRIVATE_FLAG, val: 1) = 0
> > 0.024 ( 0.060 ms): Timer/219310 futex(uaddr: 0x7fd0b152d420, op: WAIT_BITSET|PRIVATE_FLAG, utime: 0x7fd0b1657840, val3: MATCH_ANY) = 0
> > 0.086 ( 0.001 ms): Timer/219310 futex(uaddr: 0x7fd0b152d3c8, op: WAKE|PRIVATE_FLAG, val: 1) = 0
> > 0.088 ( ): Timer/219310 futex(uaddr: 0x7fd0b152d424, op: WAIT_BITSET|PRIVATE_FLAG, utime: 0x7fd0b1657840, val3: MATCH_ANY) ...
> > 0.075 ( 0.005 ms): Web Content/219299 futex(uaddr: 0x7fd0b152d420, op: WAKE|PRIVATE_FLAG, val: 1) = 1
> > 0.169 ( 0.004 ms): Web Content/219299 futex(uaddr: 0x7fd0b152d424, op: WAKE|PRIVATE_FLAG, val: 1) = 1
> > 0.088 ( 0.089 ms): Timer/219310 ... [continued]: futex()) = 0
> > 0.179 ( 0.001 ms): Timer/219310 futex(uaddr: 0x7fd0b152d3c8, op: WAKE|PRIVATE_FLAG, val: 1) = 0
> > 0.181 ( ): Timer/219310 futex(uaddr: 0x7fd0b152d420, op: WAIT_BITSET|PRIVATE_FLAG, utime: 0x7fd0b1657840, val3: MATCH_ANY) ...
> > #
> >
> > That is the filter expression attached to the raw_syscalls:sys_{enter,exit}
> > tracepoints.
> >
> > $ grep futex tools/perf/arch/powerpc/entry/syscalls/syscall.tbl
> > 221 32 futex sys_futex_time32
> > 221 64 futex sys_futex
> > 221 spu futex sys_futex
> > 422 32 futex_time64 sys_futex sys_futex
> > 449 common futex_waitv sys_futex_waitv
> > $
> >
>
> Hi Arnaldo,
>
> I checked this in powerpc by using :
> perf trace -v -e futex_waitv
> And also using functional selftest from 'tools/testing/selftests/futex/functional/futex_waitv’, to make sure ‘futex_waitv’ comes in the perf trace result.
>
> Just a minor suggestion change. Below warning mentioned in this patch is for s390. But I verified that this patch fixes the perf build warning in powerpc also. So would be good to put the warning logs for powerpc:
I'll fix that. Thanks for pointing it out!
> Warning: Kernel ABI header at 'tools/perf/arch/powerpc/entry/syscalls/syscall.tbl' differs from latest version at 'arch/powerpc/kernel/syscalls/syscall.tbl'
> diff -u tools/perf/arch/powerpc/entry/syscalls/syscall.tbl arch/powerpc/kernel/syscalls/syscall.tbl
>
> Reviewed-and-Tested-by: Athira Rajeev <atrajeev@xxxxxxxxxxxxxxxxxx>
Thanks, tags collected!
- Arnaldo
> Thanks
> Athira
>
> > This addresses this perf build warnings:
> >
> > Warning: Kernel ABI header at 'tools/perf/arch/s390/entry/syscalls/syscall.tbl' differs from latest version at 'arch/s390/kernel/syscalls/syscall.tbl'
> > diff -u tools/perf/arch/s390/entry/syscalls/syscall.tbl arch/s390/kernel/syscalls/syscall.tbl
> >
> > Cc: André Almeida <andrealmeid@xxxxxxxxxxxxx>
> > Cc: Arnd Bergmann <arnd@xxxxxxxx>
> > Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
> > ---
> > tools/perf/arch/powerpc/entry/syscalls/syscall.tbl | 1 +
> > 1 file changed, 1 insertion(+)
> >
> > diff --git a/tools/perf/arch/powerpc/entry/syscalls/syscall.tbl b/tools/perf/arch/powerpc/entry/syscalls/syscall.tbl
> > index 7bef917cc84e6499..15109af9d0754d5f 100644
> > --- a/tools/perf/arch/powerpc/entry/syscalls/syscall.tbl
> > +++ b/tools/perf/arch/powerpc/entry/syscalls/syscall.tbl
> > @@ -528,3 +528,4 @@
> > 446 common landlock_restrict_self sys_landlock_restrict_self
> > # 447 reserved for memfd_secret
> > 448 common process_mrelease sys_process_mrelease
> > +449 common futex_waitv sys_futex_waitv
> > --
> > 2.31.1
> >
> >
--
- Arnaldo