On Fri, Jan 10, 2025 at 11:01:54AM -0300, Arnaldo Carvalho de Melo wrote: > On Thu, Jan 09, 2025 at 03:31:42PM -0800, Charlie Jenkins wrote: > > On Fri, Jan 10, 2025 at 10:05:05AM +1100, Stephen Rothwell wrote: > > > Hi all, > > > > > > After merging the perf tree, today's linux-next build (native perf) > > > failed like this: > > > > > > In file included from tools/perf/arch/powerpc/include/syscall_table.h:5, > > > from util/syscalltbl.c:16: > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:16:16: error: initialized field overwritten [-Werror=override-init] > > > 16 | [13] = "time", > > > | ^~~~~~ > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:16:16: note: (near initialization for 'syscalltbl[13]') > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:22:16: error: initialized field overwritten [-Werror=override-init] > > > 22 | [18] = "oldstat", > > > | ^~~~~~~~~ > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:22:16: note: (near initialization for 'syscalltbl[18]') > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:27:16: error: initialized field overwritten [-Werror=override-init] > > > 27 | [22] = "umount", > > > | ^~~~~~~~ > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:27:16: note: (near initialization for 'syscalltbl[22]') > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:31:16: error: initialized field overwritten [-Werror=override-init] > > > 31 | [25] = "stime", > > > | ^~~~~~~ > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:31:16: note: (near initialization for 'syscalltbl[25]') > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:35:16: error: initialized field overwritten [-Werror=override-init] > > > 35 | [28] = "oldfstat", > > > | ^~~~~~~~~~ > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:35:16: note: (near initialization for 'syscalltbl[28]') > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:67:16: error: initialized field overwritten [-Werror=override-init] > > > 67 | [59] = "oldolduname", > > > | ^~~~~~~~~~~~~ > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:67:16: note: (near initialization for 'syscalltbl[59]') > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:76:16: error: initialized field overwritten [-Werror=override-init] > > > 76 | [67] = "sigaction", > > > | ^~~~~~~~~~~ > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:76:16: note: (near initialization for 'syscalltbl[67]') > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:82:16: error: initialized field overwritten [-Werror=override-init] > > > 82 | [72] = "sigsuspend", > > > | ^~~~~~~~~~~~ > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:82:16: note: (near initialization for 'syscalltbl[72]') > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:84:16: error: initialized field overwritten [-Werror=override-init] > > > 84 | [73] = "sigpending", > > > | ^~~~~~~~~~~~ > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:84:16: note: (near initialization for 'syscalltbl[73]') > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:88:16: error: initialized field overwritten [-Werror=override-init] > > > 88 | [76] = "getrlimit", > > > | ^~~~~~~~~~~ > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:88:16: note: (near initialization for 'syscalltbl[76]') > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:95:16: error: initialized field overwritten [-Werror=override-init] > > > 95 | [82] = "select", > > > | ^~~~~~~~ > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:95:16: note: (near initialization for 'syscalltbl[82]') > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:98:16: error: initialized field overwritten [-Werror=override-init] > > > 98 | [84] = "oldlstat", > > > | ^~~~~~~~~~ > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:98:16: note: (near initialization for 'syscalltbl[84]') > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:104:16: error: initialized field overwritten [-Werror=override-init] > > > 104 | [89] = "readdir", > > > | ^~~~~~~~~ > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:104:16: note: (near initialization for 'syscalltbl[89]') > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:125:17: error: initialized field overwritten [-Werror=override-init] > > > 125 | [109] = "olduname", > > > | ^~~~~~~~~~ > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:125:17: note: (near initialization for 'syscalltbl[109]') > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:136:17: error: initialized field overwritten [-Werror=override-init] > > > 136 | [119] = "sigreturn", > > > | ^~~~~~~~~~~ > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:136:17: note: (near initialization for 'syscalltbl[119]') > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:142:17: error: initialized field overwritten [-Werror=override-init] > > > 142 | [124] = "adjtimex", > > > | ^~~~~~~~~~ > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:142:17: note: (near initialization for 'syscalltbl[124]') > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:145:17: error: initialized field overwritten [-Werror=override-init] > > > 145 | [126] = "sigprocmask", > > > | ^~~~~~~~~~~~~ > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:145:17: note: (near initialization for 'syscalltbl[126]') > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:156:17: error: initialized field overwritten [-Werror=override-init] > > > 156 | [136] = "personality", > > > | ^~~~~~~~~~~~~ > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:156:17: note: (near initialization for 'syscalltbl[136]') > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:182:17: error: initialized field overwritten [-Werror=override-init] > > > 182 | [161] = "sched_rr_get_interval", > > > | ^~~~~~~~~~~~~~~~~~~~~~~ > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:182:17: note: (near initialization for 'syscalltbl[161]') > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:184:17: error: initialized field overwritten [-Werror=override-init] > > > 184 | [162] = "nanosleep", > > > | ^~~~~~~~~~~ > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:184:17: note: (near initialization for 'syscalltbl[162]') > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:202:17: error: initialized field overwritten [-Werror=override-init] > > > 202 | [179] = "pread64", > > > | ^~~~~~~~~ > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:202:17: note: (near initialization for 'syscalltbl[179]') > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:204:17: error: initialized field overwritten [-Werror=override-init] > > > 204 | [180] = "pwrite64", > > > | ^~~~~~~~~~ > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:204:17: note: (near initialization for 'syscalltbl[180]') > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:211:17: error: initialized field overwritten [-Werror=override-init] > > > 211 | [186] = "sendfile", > > > | ^~~~~~~~~~ > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:211:17: note: (near initialization for 'syscalltbl[186]') > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:217:17: error: initialized field overwritten [-Werror=override-init] > > > 217 | [191] = "readahead", > > > | ^~~~~~~~~~~ > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:217:17: note: (near initialization for 'syscalltbl[191]') > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:241:17: error: initialized field overwritten [-Werror=override-init] > > > 241 | [221] = "futex", > > > | ^~~~~~~ > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:241:17: note: (near initialization for 'syscalltbl[221]') > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:248:17: error: initialized field overwritten [-Werror=override-init] > > > 248 | [229] = "io_getevents", > > > | ^~~~~~~~~~~~~~ > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:248:17: note: (near initialization for 'syscalltbl[229]') > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:253:17: error: initialized field overwritten [-Werror=override-init] > > > 253 | [233] = "fadvise64", > > > | ^~~~~~~~~~~ > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:253:17: note: (near initialization for 'syscalltbl[233]') > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:262:17: error: initialized field overwritten [-Werror=override-init] > > > 262 | [241] = "timer_settime", > > > | ^~~~~~~~~~~~~~~ > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:262:17: note: (near initialization for 'syscalltbl[241]') > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:264:17: error: initialized field overwritten [-Werror=override-init] > > > 264 | [242] = "timer_gettime", > > > | ^~~~~~~~~~~~~~~ > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:264:17: note: (near initialization for 'syscalltbl[242]') > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:268:17: error: initialized field overwritten [-Werror=override-init] > > > 268 | [245] = "clock_settime", > > > | ^~~~~~~~~~~~~~~ > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:268:17: note: (near initialization for 'syscalltbl[245]') > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:270:17: error: initialized field overwritten [-Werror=override-init] > > > 270 | [246] = "clock_gettime", > > > | ^~~~~~~~~~~~~~~ > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:270:17: note: (near initialization for 'syscalltbl[246]') > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:272:17: error: initialized field overwritten [-Werror=override-init] > > > 272 | [247] = "clock_getres", > > > | ^~~~~~~~~~~~~~ > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:272:17: note: (near initialization for 'syscalltbl[247]') > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:274:17: error: initialized field overwritten [-Werror=override-init] > > > 274 | [248] = "clock_nanosleep", > > > | ^~~~~~~~~~~~~~~~~ > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:274:17: note: (near initialization for 'syscalltbl[248]') > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:278:17: error: initialized field overwritten [-Werror=override-init] > > > 278 | [251] = "utimes", > > > | ^~~~~~~~ > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:278:17: note: (near initialization for 'syscalltbl[251]') > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:284:17: error: initialized field overwritten [-Werror=override-init] > > > 284 | [256] = "sys_debug_setcontext", > > > | ^~~~~~~~~~~~~~~~~~~~~~ > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:284:17: note: (near initialization for 'syscalltbl[256]') > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:318:17: error: initialized field overwritten [-Werror=override-init] > > > 318 | [290] = "utimesat", > > > | ^~~~~~~~~~ > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:318:17: note: (near initialization for 'syscalltbl[290]') > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:320:17: error: initialized field overwritten [-Werror=override-init] > > > 320 | [291] = "newfstatat", > > > | ^~~~~~~~~~~~ > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:320:17: note: (near initialization for 'syscalltbl[291]') > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:334:17: error: initialized field overwritten [-Werror=override-init] > > > 334 | [304] = "utimensat", > > > | ^~~~~~~~~~~ > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:334:17: note: (near initialization for 'syscalltbl[304]') > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:339:17: error: initialized field overwritten [-Werror=override-init] > > > 339 | [308] = "sync_file_range2", > > > | ^~~~~~~~~~~~~~~~~~ > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:339:17: note: (near initialization for 'syscalltbl[308]') > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:343:17: error: initialized field overwritten [-Werror=override-init] > > > 343 | [311] = "timerfd_settime", > > > | ^~~~~~~~~~~~~~~~~ > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:343:17: note: (near initialization for 'syscalltbl[311]') > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:345:17: error: initialized field overwritten [-Werror=override-init] > > > 345 | [312] = "timerfd_gettime", > > > | ^~~~~~~~~~~~~~~~~ > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:345:17: note: (near initialization for 'syscalltbl[312]') > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:377:17: error: initialized field overwritten [-Werror=override-init] > > > 377 | [343] = "recvmmsg", > > > | ^~~~~~~~~~ > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:377:17: note: (near initialization for 'syscalltbl[343]') > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:382:17: error: initialized field overwritten [-Werror=override-init] > > > 382 | [347] = "clock_adjtime", > > > | ^~~~~~~~~~~~~~~ > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:382:17: note: (near initialization for 'syscalltbl[347]') > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:399:17: error: initialized field overwritten [-Werror=override-init] > > > 399 | [363] = "switch_endian", > > > | ^~~~~~~~~~~~~~~ > > > /home/sfr/next/perf/arch/powerpc/include/generated/asm/syscalls_64.h:399:17: note: (near initialization for 'syscalltbl[363]') > > > cc1: all warnings being treated as errors > > > > > > Presumably caused by commit > > > > > > 7eca67cf3dab ("perf tools powerpc: Use generic syscall table scripts") > > > > > > This is a native powerpc build of perf on a little endian host. > > > > Thank you for reporting! I see that these headers for powerpc are > > generating duplicate entries. This is due to me mistakenly setting the > > abis for the syscall headers for powerpc to be spu and nospu, causing > > conflicts. It looks like for the uapi, only nospu needs to be exposed. I > > will send a patch to fix that. > > Right, we need to make the syscall tables for all arches to be built in > all arches, meaning we can translate from syscall numbers found in > tracepoints collected in one arch and present in a perf.data file while > doing analysis on another machine of a different architecture, just like > we do with errno numbers. Oh that's a good point. tools/perf/util/syscalltbl.c will need to be reworked to allow non-native archs (just as a note, the native-only nature was not something that was introduced in this series!). - Charlie > > This way we would notice these kinds of problems immediatelly while > building anywhere. > > I squashed your fix as requested and will force push the result. > > - Arnaldo > > > - Charlie > > > > > > > > I have used the perf tree from next-20250109 for today. > > > > > > -- > > > Cheers, > > > Stephen Rothwell > >