# git gc Expanding reachable commits in commit graph: 80660 Expanding reachable commits in commit graph: 169181 Expanding reachable commits in commit graph: 262282 Expanding reachable commits in commit graph: 350628 Expanding reachable commits in commit graph: 446415 Expanding reachable commits in commit graph: 530969 Expanding reachable commits in commit graph: 632028 Expanding reachable commits in commit graph: 733477 Expanding reachable commits in commit graph: 837345 Expanding reachable commits in commit graph: 944390 Expanding reachable commits in commit graph: 1054173 Expanding reachable commits in commit graph: 1136851 Expanding reachable commits in commit graph: 1249291, done. Writing out commit graph in 4 passes: 60% (3016263/4997164) Writing out commit graph in 4 passes: 61% (3048271/4997164) Writing out commit graph in 4 passes: 62% (3098242/4997164) Writing out commit graph in 4 passes: 63% (3148214/4997164) Writing out commit graph in 4 passes: 64% (3198185/4997164) Writing out commit graph in 4 passes: 65% (3248157/4997164) Writing out commit graph in 4 passes: 66% (3298129/4997164) Writing out commit graph in 4 passes: 67% (3348100/4997164) Writing out commit graph in 4 passes: 68% (3398072/4997164) Writing out commit graph in 4 passes: 69% (3448044/4997164) Writing out commit graph in 4 passes: 70% (3498015/4997164) Writing out commit graph in 4 passes: 71% (3547987/4997164) Writing out commit graph in 4 passes: 72% (3597959/4997164) Writing out commit graph in 4 passes: 73% (3647930/4997164) Writing out commit graph in 4 passes: 73% (3678006/4997164) Writing out commit graph in 4 passes: 74% (3697902/4997164) Writing out commit graph in 4 passes: 75% (3747873/4997164) Writing out commit graph in 4 passes: 76% (3797845/4997164) Writing out commit graph in 4 passes: 77% (3847817/4997164) Writing out commit graph in 4 passes: 78% (3897788/4997164) Writing out commit graph in 4 passes: 79% (3947760/4997164) Writing out commit graph in 4 passes: 80% (3997732/4997164) Writing out commit graph in 4 passes: 81% (4047703/4997164) Writing out commit graph in 4 passes: 82% (4097675/4997164) Writing out commit graph in 4 passes: 83% (4147647/4997164) Writing out commit graph in 4 passes: 84% (4197618/4997164) Writing out commit graph in 4 passes: 85% (4247590/4997164) Writing out commit graph in 4 passes: 86% (4297562/4997164) Writing out commit graph in 4 passes: 87% (4347533/4997164) Writing out commit graph in 4 passes: 88% (4397505/4997164) Writing out commit graph in 4 passes: 89% (4447476/4997164) Writing out commit graph in 4 passes: 90% (4497448/4997164) Writing out commit graph in 4 passes: 91% (4547420/4997164) Writing out commit graph in 4 passes: 92% (4597391/4997164) Writing out commit graph in 4 passes: 93% (4647363/4997164) Writing out commit graph in 4 passes: 94% (4697335/4997164) Writing out commit graph in 4 passes: 95% (4747306/4997164) Writing out commit graph in 4 passes: 96% (4797278/4997164) Writing out commit graph in 4 passes: 97% (4847250/4997164) Writing out commit graph in 4 passes: 98% (4897221/4997164) Writing out commit graph in 4 passes: 99% (4947193/4997164) Writing out commit graph in 4 passes: 100% (4997164/4997164) Writing out commit graph in 4 passes: 100% (4997164/4997164), done. # git rev-parse -q --verify 021533194476035883300d60fbb3136426ac8ea5^{commit} 021533194476035883300d60fbb3136426ac8ea5 already have revision, skipping fetch # git checkout -q -f -B kisskb 021533194476035883300d60fbb3136426ac8ea5 # git clean -qxdf # < git log -1 # commit 021533194476035883300d60fbb3136426ac8ea5 # Author: Linus Torvalds # Date: Thu Feb 1 14:57:17 2024 -0800 # # Kconfig: Disable -Wstringop-overflow for GCC globally # # It turns out it was never just gcc-11 that was broken. Apparently it # just happens to work on x86-64 with other gcc versions. # # On arm64, I see warnings with gcc version 13.2.1, and the kernel test # robot reports the same problem on s390 with gcc 13.2.0. # # Admittedly it seems to be just the new Xe drm driver, but this is # keeping me from doing my normal arm64 build testing. So it gets # reverted until somebody figures out what causes the problem (and why it # doesn't show on x86-64, which is what makes me suspect it was never just # about gcc-11, and more about just random happenstance). # # This also changes the Kconfig naming a bit - just make the "disable this # for GCC" conditional be one simple Kconfig entry, and we can put the gcc # version dependencies in that entry once we figure out what the correct # rules are. # # The version dependency _may_ still end up being "gcc version larger than # 11" if the issue is purely in the Xe driver, but even if that ends up # the case, let's make that all part of the "GCC_NO_STRINGOP_OVERFLOW" # logic. # # For now, we just disable it for all gcc versions while the exact cause # is unknown. # # Link: https://lore.kernel.org/all/202401161031.hjGJHMiJ-lkp@intel.com/T/ # Cc: Gustavo A. R. Silva # Cc: Kees Cook # Signed-off-by: Linus Torvalds # < /opt/cross/kisskb/korg/gcc-5.5.0-nolibc/aarch64-linux/bin/aarch64-linux-gcc --version # < /opt/cross/kisskb/korg/gcc-5.5.0-nolibc/aarch64-linux/bin/aarch64-linux-ld --version # < git log --format=%s --max-count=1 021533194476035883300d60fbb3136426ac8ea5 # make -s -j 40 ARCH=arm64 O=/kisskb/build/linus_allnoconfig_arm64-gcc5 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-5.5.0-nolibc/aarch64-linux/bin/aarch64-linux- allnoconfig # < make -s -j 40 ARCH=arm64 O=/kisskb/build/linus_allnoconfig_arm64-gcc5 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-5.5.0-nolibc/aarch64-linux/bin/aarch64-linux- help # make -s -j 40 ARCH=arm64 O=/kisskb/build/linus_allnoconfig_arm64-gcc5 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-5.5.0-nolibc/aarch64-linux/bin/aarch64-linux- olddefconfig # make -s -j 40 ARCH=arm64 O=/kisskb/build/linus_allnoconfig_arm64-gcc5 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-5.5.0-nolibc/aarch64-linux/bin/aarch64-linux- Completed OK # rm -rf /kisskb/build/linus_allnoconfig_arm64-gcc5 # Build took: 0:04:14.127015