Re: [mainline]tools/perf build warnings

From: Venkat Rao Bagalkote
Date: Wed Apr 16 2025 - 13:19:45 EST



On 16/04/25 8:04 pm, Athira Rajeev wrote:

On 16 Apr 2025, at 7:49 PM, Venkat Rao Bagalkote <venkat88@xxxxxxxxxxxxx> wrote:


On 16/04/25 7:33 pm, Venkat Rao Bagalkote wrote:
On 16/04/25 6:41 pm, Athira Rajeev wrote:
On 16 Apr 2025, at 5:12 PM, Venkat Rao Bagalkote <venkat88@xxxxxxxxxxxxx> wrote:

Hello,


I am observing a new build warning on today mainline kernel, with head commit: g834a4a689699

Repo:https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git


Warnings:

diff -u tools/include/vdso/unaligned.h include/vdso/unaligned.h


If you happen to fix this, please add below tag.


Reported-by: Venkat Rao Bagalkote <venkat88@xxxxxxxxxxxxx>
Hi Venkat

Can you please check with https://web.git.kernel.org/pub/scm/linux/kernel/git/perf/perf-tools-next.git/?h=tmp.perf-tools-next
with the tmp.perf-tools-next branch..

I verified with perf-tools-next repo on both branches namely tmp.perf-tools-next and perf-tools-next, and I think this warning got recently introduced.
/Typo in the last mail, please refer to below update./

I verified with perf-tools-next repo on both branches namely tmp.perf-tools-next and perf-tools-next, and issue is not seen there. And I think this warning got recently introduced.
Hi Venkat,

Can you please check with this change:

From 9a92d361ca2c22ac774b904211eb8c4f7c80fc85 Mon Sep 17 00:00:00 2001
From: Athira Rajeev <atrajeev@xxxxxxxxxxxxx>
Date: Fri, 9 May 2025 07:49:40 -0500
Subject: [PATCH] tools headers: Update the include/vdso/unaligned.h to sync
headers

To pick up the changes in:
commit acea9943271b ("vdso: Address variable shadowing in macros")

Addressing this perf tools build warning:

diff -u tools/include/vdso/unaligned.h include/vdso/unaligned.h

Reported-by: Venkat Rao Bagalkote <venkat88@xxxxxxxxxxxxx>
Signed-off-by: Athira Rajeev <atrajeev@xxxxxxxxxxxxx>


Tested this patch and it fixes the reported warnings. Hence,

Tested-by: Venkat Rao Bagalkote <venkat88@xxxxxxxxxxxxx>


Logs:


make -C perf/
make: Entering directory '/root/linux/tools/perf'
  BUILD:   Doing 'make -j32' parallel build
Warning: Kernel ABI header differences:
  diff -u tools/include/uapi/linux/bits.h include/uapi/linux/bits.h
  diff -u tools/include/linux/bits.h include/linux/bits.h
  diff -u tools/arch/arm64/include/asm/cputype.h arch/arm64/include/asm/cputype.h
Makefile.config:1093: No libcapstone found, disables disasm engine support for 'perf script', please install libcapstone-dev/capstone-devel
Makefile.config:1155: libpfm4 not found, disables libpfm4 support. Please install libpfm4-dev

Auto-detecting system features:
...                                   libdw: [ on  ]
...                                   glibc: [ on  ]
...                                  libbfd: [ on  ]
...                          libbfd-buildid: [ on  ]
...                                  libelf: [ on  ]
...                                 libnuma: [ on  ]
...                  numa_num_possible_cpus: [ on  ]
...                                 libperl: [ on  ]
...                               libpython: [ on  ]
...                               libcrypto: [ on  ]
...                               libunwind: [ OFF ]
...                             libcapstone: [ OFF ]
...                               llvm-perf: [ on  ]
...                                    zlib: [ on  ]
...                                    lzma: [ on  ]
...                               get_cpuid: [ OFF ]
...                                     bpf: [ on  ]
...                                  libaio: [ on  ]
...                                 libzstd: [ on  ]

  GEN     common-cmds.h
  GEN /root/linux/tools/perf/arch/arm64/include/generated/asm/sysreg-defs.h
  PERF_VERSION = 6.15.rc2.g834a4a689699
  GEN     perf-archive
  GEN     perf-iostat
  CC      jvmti/libjvmti.o


Regards,

Venkat.

---
tools/include/vdso/unaligned.h | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/tools/include/vdso/unaligned.h b/tools/include/vdso/unaligned.h
index eee3d2a4dbe4..ff0c06b6513e 100644
--- a/tools/include/vdso/unaligned.h
+++ b/tools/include/vdso/unaligned.h
@@ -2,14 +2,14 @@
#ifndef __VDSO_UNALIGNED_H
#define __VDSO_UNALIGNED_H
-#define __get_unaligned_t(type, ptr) ({ \
- const struct { type x; } __packed *__pptr = (typeof(__pptr))(ptr); \
- __pptr->x; \
+#define __get_unaligned_t(type, ptr) ({ \
+ const struct { type x; } __packed * __get_pptr = (typeof(__get_pptr))(ptr); \
+ __get_pptr->x; \
})
-#define __put_unaligned_t(type, val, ptr) do { \
- struct { type x; } __packed *__pptr = (typeof(__pptr))(ptr); \
- __pptr->x = (val); \
+#define __put_unaligned_t(type, val, ptr) do { \
+ struct { type x; } __packed * __put_pptr = (typeof(__put_pptr))(ptr); \
+ __put_pptr->x = (val); \
} while (0)
#endif /* __VDSO_UNALIGNED_H */
-- 2.47.1

Thanks
Athira

Hi Namhyung,

I see we have few other warnings for which fixes is planned to picked for next cycle: https://lore.kernel.org/linux-perf-users/FE96FD04-4396-4C34-A70D-2A592FD5F916@xxxxxxxxxxxxx/T/#me2ee1b70aeaad4901fb4d995b3b3015cd32f1adc

Can we also consider picking this one include/vdso/unaligned.h .. Once Venkat tests , I will post this as separate patch

Thanks
Athira
Git Bisect is pointing to acea9943271b62905033f2f8ca571cdd52d6ea7b as first bad commit.


Below is the bisect log:

git bisect log
git bisect start
# status: waiting for both good and bad commits
# bad: [834a4a689699090a406d1662b03affa8b155d025] Merge tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma
git bisect bad 834a4a689699090a406d1662b03affa8b155d025
# status: waiting for good commit(s), bad commit known
# good: [0af2f6be1b4281385b618cb86ad946eded089ac8] Linux 6.15-rc1
git bisect good 0af2f6be1b4281385b618cb86ad946eded089ac8
# bad: [ef7785882672e73847fb80f6c39e76998d4db57b] Merge tag 'bcachefs-2025-04-10' of git://evilpiepirate.org/bcachefs
git bisect bad ef7785882672e73847fb80f6c39e76998d4db57b
# good: [e4742a89cfaced383db758bef94037637899487a] Merge tag 'block-6.15-20250410' of git://git.kernel.dk/linux
git bisect good e4742a89cfaced383db758bef94037637899487a
# good: [eaa517b77e63442260640d875f824d1111ca6569] ethtool: cmis_cdb: Fix incorrect read / write length extension
git bisect good eaa517b77e63442260640d875f824d1111ca6569
# good: [ac253a537da3b210fa4b65d522d5533fc68f9515] Merge tag 'perf-urgent-2025-04-10' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
git bisect good ac253a537da3b210fa4b65d522d5533fc68f9515
# good: [3c9de67dd37029cca1d0f391ff565b3809b40a1f] Merge tag 'x86-urgent-2025-04-10' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
git bisect good 3c9de67dd37029cca1d0f391ff565b3809b40a1f
# bad: [0c7cae12f67c4c5fd232cffb27023deb409e1e20] Merge tag 'irq-urgent-2025-04-10' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
git bisect bad 0c7cae12f67c4c5fd232cffb27023deb409e1e20
# bad: [34833819d2270ef96fa98fe3c1d3d297b5dec986] Merge tag 'timers-urgent-2025-04-10' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
git bisect bad 34833819d2270ef96fa98fe3c1d3d297b5dec986
# good: [92e250c624ea37fde64bfd624fd2556f0d846f18] timekeeping: Add a lockdep override in tick_freeze()
git bisect good 92e250c624ea37fde64bfd624fd2556f0d846f18
# bad: [acea9943271b62905033f2f8ca571cdd52d6ea7b] vdso: Address variable shadowing in macros
git bisect bad acea9943271b62905033f2f8ca571cdd52d6ea7b
# first bad commit: [acea9943271b62905033f2f8ca571cdd52d6ea7b] vdso: Address variable shadowing in macros


Regards,

Venkat.

Also there is a patchset here:
https://lore.kernel.org/linux-perf-users/FE96FD04-4396-4C34-A70D-2A592FD5F916@xxxxxxxxxxxxx/T/#m3e9d6aac4c34ebf42f18f3c213b7dff8f8c70d9d

Which I think you have already tested..

Thanks
Athira
Regards,

Venkat.