Control: tags -1 patch On Tue, Jul 21, 2026 at 11:59:58AM +0000, Graham Inggs wrote: > Source: llvm-toolchain-21 > Version: 1:21.1.8-7 > Severity: serious > Tags: ftbfs > X-Debbugs-Cc: [email protected], [email protected] > > Hi Maintainer > > llvm-toolchain-21 FTBFS when rebuilt against libabsl20260526 [1]. > I've copied what I hope is the relevant part of the log below. > > Regards > Graham >... > -c > /build/reproducible-path/llvm-toolchain-21-21.1.8/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.cpp > /build/reproducible-path/llvm-toolchain-21-21.1.8/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.cpp:160:10: > fatal error: 'linux/scc.h' file not found > 160 | #include <linux/scc.h> > | ^~~~~~~~~~~~~ > 1 error generated.
The attached backported commit fixes the build. cu Adrian
>From 96d1a2e5cb7bc92c89fdcc370b2e1ef977d814cf Mon Sep 17 00:00:00 2001 From: cqwrteur <[email protected]> Date: Sat, 25 Apr 2026 14:23:32 +0800 Subject: [compiler-rt][sanitizer] Remove linux/scc.h (#194116) #194110 Linux Kernel has removed scc.h header completely from the source code Therefore, we need to remove the usage in compiler-rt/sanitizer too. https://github.com/torvalds/linux/commit/64edfa65062dc4509ba75978116b2f6d392346f5#diff-1ca78e598a5041ee51ae795d168435afad598b82a7a0ce80f215993589b96c7c Without removing it, not only it breaks compiler-rt but also GCC build since GCC always builds libsanitizer for linux targets. After merging this we will need to cherry pick to GCC. (cherry picked from commit 3dc4fd6dd41100f051a63642f449b16324389c96) --- .../sanitizer_platform_limits_posix.cpp | 21 ++++++++----------- 1 file changed, 9 insertions(+), 12 deletions(-) diff --git a/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.cpp b/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.cpp index ea8cc306268c..0109df531e88 100644 --- a/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.cpp +++ b/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.cpp @@ -151,16 +151,15 @@ typedef struct user_fpregs elf_fpregset_t; #if defined(__mips64) # include <sys/procfs.h> #endif -#include <sys/user.h> -#include <linux/if_eql.h> -#include <linux/if_plip.h> -#include <linux/lp.h> -#include <linux/mroute.h> -#include <linux/mroute6.h> -#include <linux/scc.h> -#include <linux/serial.h> -#include <sys/msg.h> -#include <sys/ipc.h> +# include <linux/if_eql.h> +# include <linux/if_plip.h> +# include <linux/lp.h> +# include <linux/mroute.h> +# include <linux/mroute6.h> +# include <linux/serial.h> +# include <sys/ipc.h> +# include <sys/msg.h> +# include <sys/user.h> #endif // SANITIZER_ANDROID #include <link.h> @@ -532,8 +531,6 @@ unsigned struct_ElfW_Phdr_sz = sizeof(Elf_Phdr); unsigned struct_kbsentry_sz = sizeof(struct kbsentry); unsigned struct_mtconfiginfo_sz = sizeof(struct mtconfiginfo); unsigned struct_nr_parms_struct_sz = sizeof(struct nr_parms_struct); - unsigned struct_scc_modem_sz = sizeof(struct scc_modem); - unsigned struct_scc_stat_sz = sizeof(struct scc_stat); unsigned struct_serial_multiport_struct_sz = sizeof(struct serial_multiport_struct); unsigned struct_serial_struct_sz = sizeof(struct serial_struct); -- 2.47.3

