lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <s6pt2qblbwmw5uz7u27ypyyercpm4fbd7qt7qaabceasxdtd3x@jucvfmzzcueg>
Date: Wed, 18 Jun 2025 02:53:08 +0530
From: Brahmajit Das <listout@...tout.xyz>
To: linux-arm-kernel@...ts.infradead.org
Cc: linux-kernel@...r.kernel.org, linux@...linux.org.uk, arnd@...db.de, 
	akpm@...ux-foundation.org
Subject: Failing to build mainline kernel for arm

Hello developers,

I was trying to build the mainline kernel (top commit
4663747812d1a272312d1b95cbd128f0cdb329f2) and came across a build
failure with allyesconfig.

$ make ARCH=arm CROSS_COMPILE=arm-none-eabi-
...
  CC      kernel/fork.o
In file included from kernel/fork.c:93:
./include/linux/kcov.h:113:6: error: mismatch in argument 1 type of built-in function ‘__sanitizer_cov_trace_cmp4’; expected ‘long unsigned int’ [-Werror=builtin-declaration-mismatch]
  113 | void __sanitizer_cov_trace_cmp4(u32 arg1, u32 arg2);
      |      ^~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/kcov.h:117:6: error: mismatch in argument 1 type of built-in function ‘__sanitizer_cov_trace_const_cmp4’; expected ‘long unsigned int’ [-Werror=builtin-declaration-misma
tch]
  117 | void __sanitizer_cov_trace_const_cmp4(u32 arg1, u32 arg2);
      |      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cc1: all warnings being treated as errors
make[3]: *** [scripts/Makefile.build:287: kernel/fork.o] Error 1
make[2]: *** [scripts/Makefile.build:554: kernel] Error 2
make[1]: *** [/home/bdas/linux/Makefile:2003: .] Error 2
make: *** [Makefile:248: __sub-make] Error 2

I bisected it to commit e0ddec73fd4822d2ffe914d5ce3e2718f985276a
"kcov: add prototypes for helper functions"

While reverting the commit does help, but that would not be the correct
approach I guess.

Part of the commit modifies include/linux/kcov.h

	#ifdef CONFIG_64BIT
	+typedef unsigned long kcov_u64;
	+#else
	+typedef unsigned long long kcov_u64;
	+#endif
	+
	+void __sanitizer_cov_trace_pc(void);
	+void __sanitizer_cov_trace_cmp1(u8 arg1, u8 arg2);
	+void __sanitizer_cov_trace_cmp2(u16 arg1, u16 arg2);
	+void __sanitizer_cov_trace_cmp4(u32 arg1, u32 arg2);
	+void __sanitizer_cov_trace_cmp8(kcov_u64 arg1, kcov_u64 arg2);
	+void __sanitizer_cov_trace_const_cmp1(u8 arg1, u8 arg2);
	+void __sanitizer_cov_trace_const_cmp2(u16 arg1, u16 arg2);
	+void __sanitizer_cov_trace_const_cmp4(u32 arg1, u32 arg2);
	+void __sanitizer_cov_trace_const_cmp8(kcov_u64 arg1, kcov_u64 arg2);
	+void __sanitizer_cov_trace_switch(kcov_u64 val, void *cases);

Maybe we can do something similar to kcov_u64, like kcov_u32? But I'm
not sure.
-- 
Regards,
listout

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ