# git rev-parse -q --verify 6a9dc5fd6170d0a41c8a14eb19e63d94bea5705a^{commit} 6a9dc5fd6170d0a41c8a14eb19e63d94bea5705a already have revision, skipping fetch # git checkout -q -f -B kisskb 6a9dc5fd6170d0a41c8a14eb19e63d94bea5705a # git clean -qxdf # < git log -1 # commit 6a9dc5fd6170d0a41c8a14eb19e63d94bea5705a # Author: Gustavo A. R. Silva # Date: Mon Aug 24 15:36:14 2020 -0500 # # lib: Revert use of fallthrough pseudo-keyword in lib/ # # The following build error for powerpc64 was reported by Nathan Chancellor: # # "$ scripts/config --file arch/powerpc/configs/powernv_defconfig -e KERNEL_XZ # # $ make -skj"$(nproc)" ARCH=powerpc CROSS_COMPILE=powerpc64le-linux- distclean powernv_defconfig zImage # ... # In file included from arch/powerpc/boot/../../../lib/decompress_unxz.c:234, # from arch/powerpc/boot/decompress.c:38: # arch/powerpc/boot/../../../lib/xz/xz_dec_stream.c: In function 'dec_main': # arch/powerpc/boot/../../../lib/xz/xz_dec_stream.c:586:4: error: 'fallthrough' undeclared (first use in this function) # 586 | fallthrough; # | ^~~~~~~~~~~ # # This will end up affecting distribution configurations such as Debian # and OpenSUSE according to my testing. I am not sure what the solution # is, the PowerPC wrapper does not set -D__KERNEL__ so I am not sure # that compiler_attributes.h can be safely included." # # In order to avoid these sort of problems, it seems that the best # solution is to use /* fall through */ comments instead of the # fallthrough pseudo-keyword macro in lib/, for now. # # Reported-by: Nathan Chancellor # Fixes: df561f6688fe ("treewide: Use fallthrough pseudo-keyword") # Signed-off-by: Gustavo A. R. Silva # Reviewed-and-tested-by: Nathan Chancellor # Signed-off-by: Linus Torvalds # < /opt/cross/kisskb/korg/gcc-4.9.4-nolibc/powerpc64-linux/bin/powerpc64-linux-gcc --version # < /opt/cross/kisskb/korg/gcc-4.9.4-nolibc/powerpc64-linux/bin/powerpc64-linux-ld --version # < git log --format=%s --max-count=1 6a9dc5fd6170d0a41c8a14eb19e63d94bea5705a # < make -s -j 48 ARCH=powerpc O=/kisskb/build/linus-rand_powerpc-randconfig_powerpc-gcc4.9 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-4.9.4-nolibc/powerpc64-linux/bin/powerpc64-linux- randconfig KCONFIG_SEED=0x2CDA8E0 WARNING: unmet direct dependencies detected for FSL_EMB_PERFMON Depends on [n]: E500 [=n] || PPC_83xx [=n] Selected by [y]: - PPC_FSL_BOOK3E [=y] # Added to kconfig CONFIG_STANDALONE=y # Added to kconfig CONFIG_BUILD_DOCSRC=n # Added to kconfig CONFIG_MODULE_SIG=n # Added to kconfig CONFIG_CPU_BIG_ENDIAN=y # Added to kconfig CONFIG_PPC64=y # Added to kconfig CONFIG_PPC_DISABLE_WERROR=y # Added to kconfig CONFIG_SECTION_MISMATCH_WARN_ONLY=y # Added to kconfig CONFIG_PREVENT_FIRMWARE_BUILD=y # Added to kconfig CONFIG_CC_STACKPROTECTOR_STRONG=n # Added to kconfig CONFIG_GCC_PLUGINS=n # Added to kconfig CONFIG_LD_HEAD_STUB_CATCH=y # Added to kconfig CONFIG_TRIM_UNUSED_KSYMS=n # Added to kconfig CONFIG_UBSAN=n # < make -s -j 48 ARCH=powerpc O=/kisskb/build/linus-rand_powerpc-randconfig_powerpc-gcc4.9 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-4.9.4-nolibc/powerpc64-linux/bin/powerpc64-linux- help # make -s -j 48 ARCH=powerpc O=/kisskb/build/linus-rand_powerpc-randconfig_powerpc-gcc4.9 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-4.9.4-nolibc/powerpc64-linux/bin/powerpc64-linux- olddefconfig .config:5705:warning: override: reassigning to symbol STANDALONE .config:5709:warning: override: reassigning to symbol PPC64 .config:5710:warning: override: reassigning to symbol PPC_DISABLE_WERROR .config:5711:warning: override: reassigning to symbol SECTION_MISMATCH_WARN_ONLY .config:5717:warning: override: reassigning to symbol UBSAN WARNING: unmet direct dependencies detected for HOTPLUG_PCI_POWERNV Depends on [n]: PCI [=y] && HOTPLUG_PCI [=n] && PPC_POWERNV [=y] && EEH [=y] Selected by [y]: - OCXL [=y] && PPC_POWERNV [=y] && PCI [=y] && EEH [=y] # make -s -j 48 ARCH=powerpc O=/kisskb/build/linus-rand_powerpc-randconfig_powerpc-gcc4.9 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-4.9.4-nolibc/powerpc64-linux/bin/powerpc64-linux- WARNING: unmet direct dependencies detected for HOTPLUG_PCI_POWERNV Depends on [n]: PCI [=y] && HOTPLUG_PCI [=n] && PPC_POWERNV [=y] && EEH [=y] Selected by [y]: - OCXL [=y] && PPC_POWERNV [=y] && PCI [=y] && EEH [=y] WARNING: unmet direct dependencies detected for HOTPLUG_PCI_POWERNV Depends on [n]: PCI [=y] && HOTPLUG_PCI [=n] && PPC_POWERNV [=y] && EEH [=y] Selected by [y]: - OCXL [=y] && PPC_POWERNV [=y] && PCI [=y] && EEH [=y] WARNING: unmet direct dependencies detected for HOTPLUG_PCI_POWERNV Depends on [n]: PCI [=y] && HOTPLUG_PCI [=n] && PPC_POWERNV [=y] && EEH [=y] Selected by [y]: - OCXL [=y] && PPC_POWERNV [=y] && PCI [=y] && EEH [=y] /kisskb/src/drivers/cpufreq/powernv-cpufreq.c: In function 'powernv_cpufreq_reboot_notifier': /kisskb/src/drivers/cpufreq/powernv-cpufreq.c:897:1: warning: the frame size of 1456 bytes is larger than 1024 bytes [-Wframe-larger-than=] } ^ /kisskb/src/drivers/crypto/sa2ul.c: In function 'sa_aes_cbc_setkey': /kisskb/src/drivers/crypto/sa2ul.c:919:9: warning: missing braces around initializer [-Wmissing-braces] struct algo_data ad = { 0 }; ^ /kisskb/src/drivers/crypto/sa2ul.c:919:9: warning: (near initialization for 'ad.enc_eng') [-Wmissing-braces] /kisskb/src/drivers/crypto/sa2ul.c: In function 'sa_aes_ecb_setkey': /kisskb/src/drivers/crypto/sa2ul.c:939:9: warning: missing braces around initializer [-Wmissing-braces] struct algo_data ad = { 0 }; ^ /kisskb/src/drivers/crypto/sa2ul.c:939:9: warning: (near initialization for 'ad.enc_eng') [-Wmissing-braces] /kisskb/src/drivers/crypto/sa2ul.c: In function 'sa_3des_cbc_setkey': /kisskb/src/drivers/crypto/sa2ul.c:957:9: warning: missing braces around initializer [-Wmissing-braces] struct algo_data ad = { 0 }; ^ /kisskb/src/drivers/crypto/sa2ul.c:957:9: warning: (near initialization for 'ad.enc_eng') [-Wmissing-braces] /kisskb/src/drivers/crypto/sa2ul.c: In function 'sa_3des_ecb_setkey': /kisskb/src/drivers/crypto/sa2ul.c:971:9: warning: missing braces around initializer [-Wmissing-braces] struct algo_data ad = { 0 }; ^ /kisskb/src/drivers/crypto/sa2ul.c:971:9: warning: (near initialization for 'ad.enc_eng') [-Wmissing-braces] /kisskb/src/drivers/crypto/sa2ul.c: In function 'sa_sha1_cra_init': /kisskb/src/drivers/crypto/sa2ul.c:1569:9: warning: missing braces around initializer [-Wmissing-braces] struct algo_data ad = { 0 }; ^ /kisskb/src/drivers/crypto/sa2ul.c:1569:9: warning: (near initialization for 'ad.enc_eng') [-Wmissing-braces] /kisskb/src/drivers/crypto/sa2ul.c: In function 'sa_sha256_cra_init': /kisskb/src/drivers/crypto/sa2ul.c:1585:9: warning: missing braces around initializer [-Wmissing-braces] struct algo_data ad = { 0 }; ^ /kisskb/src/drivers/crypto/sa2ul.c:1585:9: warning: (near initialization for 'ad.enc_eng') [-Wmissing-braces] /kisskb/src/drivers/crypto/sa2ul.c: In function 'sa_sha512_cra_init': /kisskb/src/drivers/crypto/sa2ul.c:1601:9: warning: missing braces around initializer [-Wmissing-braces] struct algo_data ad = { 0 }; ^ /kisskb/src/drivers/crypto/sa2ul.c:1601:9: warning: (near initialization for 'ad.enc_eng') [-Wmissing-braces] /kisskb/src/drivers/crypto/sa2ul.c: In function 'sa_aead_cbc_sha1_setkey': /kisskb/src/drivers/crypto/sa2ul.c:1845:9: warning: missing braces around initializer [-Wmissing-braces] struct algo_data ad = { 0 }; ^ /kisskb/src/drivers/crypto/sa2ul.c:1845:9: warning: (near initialization for 'ad.enc_eng') [-Wmissing-braces] /kisskb/src/drivers/crypto/sa2ul.c: In function 'sa_aead_cbc_sha256_setkey': /kisskb/src/drivers/crypto/sa2ul.c:1858:9: warning: missing braces around initializer [-Wmissing-braces] struct algo_data ad = { 0 }; ^ /kisskb/src/drivers/crypto/sa2ul.c:1858:9: warning: (near initialization for 'ad.enc_eng') [-Wmissing-braces] Completed OK # rm -rf /kisskb/build/linus-rand_powerpc-randconfig_powerpc-gcc4.9 # Build took: 0:05:03.707460