Subject: linux-next: build failure after merge of the perf tree

From: Stephen Rothwell <[email-masked]>
Date: Fri, 11 Oct 2024 10:23:30 +1100

Hi all,

After merging the perf tree, today's linux-next build (native perf)
failed like this:

util/evsel.c: In function 'store_event':
util/evsel.c:138:50: error: format '%llu' expects argument of type 'long long unsigned int', but argument 6 has type '__u64' {aka 'long unsigned int'} [-Werror=format=]
  138 |         snprintf(path, PATH_MAX, "%s/event-%d-%llu-%d", dir,
      |                                               ~~~^
      |                                                  |
      |                                                  long long unsigned int
      |                                               %lu
  139 |                  attr->type, attr->config, fd);
      |                              ~~~~~~~~~~~~         
      |                                  |
      |                                  __u64 {aka long unsigned int}
util/evsel.c:147:41: error: format '%llu' expects argument of type 'long long unsigned int', but argument 4 has type '__u64' {aka 'long unsigned int'} [-Werror=format=]
  147 |         if (fprintf(file, "[event-%d-%llu-%d]\n",
      |                                      ~~~^
      |                                         |
      |                                         long long unsigned int
      |                                      %lu
  148 |                     attr->type, attr->config, fd) < 0) {
      |                                 ~~~~~~~~~~~~
      |                                     |
      |                                     __u64 {aka long unsigned int}
util/evsel.c:164:33: error: format '%llu' expects argument of type 'long long unsigned int', but argument 3 has type '__u64' {aka 'long unsigned int'} [-Werror=format=]
  164 |         WRITE_ASS(config,  "llu");
      |                                 ^
util/evsel.c:122:28: note: in definition of macro '__WRITE_ASS'
  122 |         if (fprintf(file, #str "=%"fmt "\n", data) < 0) {               \
      |                            ^~~
util/evsel.c:164:9: note: in expansion of macro 'WRITE_ASS'
  164 |         WRITE_ASS(config,  "llu");
      |         ^~~~~~~~~
util/evsel.c:165:39: error: format '%llu' expects argument of type 'long long unsigned int', but argument 3 has type '__u64' {aka 'long unsigned int'} [-Werror=format=]
  165 |         WRITE_ASS(sample_period, "llu");
      |                                       ^
util/evsel.c:122:28: note: in definition of macro '__WRITE_ASS'
  122 |         if (fprintf(file, #str "=%"fmt "\n", data) < 0) {               \
      |                            ^~~
util/evsel.c:165:9: note: in expansion of macro 'WRITE_ASS'
  165 |         WRITE_ASS(sample_period, "llu");
      |         ^~~~~~~~~
util/evsel.c:166:39: error: format '%llu' expects argument of type 'long long unsigned int', but argument 3 has type '__u64' {aka 'long unsigned int'} [-Werror=format=]
  166 |         WRITE_ASS(sample_type,   "llu");
      |                                       ^
util/evsel.c:122:28: note: in definition of macro '__WRITE_ASS'
  122 |         if (fprintf(file, #str "=%"fmt "\n", data) < 0) {               \
      |                            ^~~
util/evsel.c:166:9: note: in expansion of macro 'WRITE_ASS'
  166 |         WRITE_ASS(sample_type,   "llu");
      |         ^~~~~~~~~
util/evsel.c:167:39: error: format '%llu' expects argument of type 'long long unsigned int', but argument 3 has type '__u64' {aka 'long unsigned int'} [-Werror=format=]
  167 |         WRITE_ASS(read_format,   "llu");
      |                                       ^
util/evsel.c:122:28: note: in definition of macro '__WRITE_ASS'
  122 |         if (fprintf(file, #str "=%"fmt "\n", data) < 0) {               \
      |                            ^~~
util/evsel.c:167:9: note: in expansion of macro 'WRITE_ASS'
  167 |         WRITE_ASS(read_format,   "llu");
      |         ^~~~~~~~~
util/evsel.c:198:33: error: format '%llu' expects argument of type 'long long unsigned int', but argument 3 has type '__u64' {aka 'long unsigned int'} [-Werror=format=]
  198 |         WRITE_ASS(config1, "llu");
      |                                 ^
util/evsel.c:122:28: note: in definition of macro '__WRITE_ASS'
  122 |         if (fprintf(file, #str "=%"fmt "\n", data) < 0) {               \
      |                            ^~~
util/evsel.c:198:9: note: in expansion of macro 'WRITE_ASS'
  198 |         WRITE_ASS(config1, "llu");
      |         ^~~~~~~~~
util/evsel.c:199:33: error: format '%llu' expects argument of type 'long long unsigned int', but argument 3 has type '__u64' {aka 'long unsigned int'} [-Werror=format=]
  199 |         WRITE_ASS(config2, "llu");
      |                                 ^
util/evsel.c:122:28: note: in definition of macro '__WRITE_ASS'
  122 |         if (fprintf(file, #str "=%"fmt "\n", data) < 0) {               \
      |                            ^~~
util/evsel.c:199:9: note: in expansion of macro 'WRITE_ASS'
  199 |         WRITE_ASS(config2, "llu");
      |         ^~~~~~~~~
util/evsel.c:200:44: error: format '%llu' expects argument of type 'long long unsigned int', but argument 3 has type '__u64' {aka 'long unsigned int'} [-Werror=format=]
  200 |         WRITE_ASS(branch_sample_type, "llu");
      |                                            ^
util/evsel.c:122:28: note: in definition of macro '__WRITE_ASS'
  122 |         if (fprintf(file, #str "=%"fmt "\n", data) < 0) {               \
      |                            ^~~
util/evsel.c:200:9: note: in expansion of macro 'WRITE_ASS'
  200 |         WRITE_ASS(branch_sample_type, "llu");
      |         ^~~~~~~~~
util/evsel.c:201:44: error: format '%llu' expects argument of type 'long long unsigned int', but argument 3 has type '__u64' {aka 'long unsigned int'} [-Werror=format=]
  201 |         WRITE_ASS(sample_regs_user,   "llu");
      |                                            ^
util/evsel.c:122:28: note: in definition of macro '__WRITE_ASS'
  122 |         if (fprintf(file, #str "=%"fmt "\n", data) < 0) {               \
      |                            ^~~
util/evsel.c:201:9: note: in expansion of macro 'WRITE_ASS'
  201 |         WRITE_ASS(sample_regs_user,   "llu");
      |         ^~~~~~~~~
cc1: all warnings being treated as errors

Caused by commit

  f90a29144887 ("perf test: Remove C test wrapper for attr.py")

This is a native build of perf on ppc64le using

  make -C tools/perf -f Makefile.perf NO_BPF_SKEL=1

I have merged the perf tree from next-20241010 for today.

-- 
Cheers,
Stephen Rothwell