# git rev-parse -q --verify 308f765116e9176bf508c10b72ca80ad594e3119^{commit} 308f765116e9176bf508c10b72ca80ad594e3119 already have revision, skipping fetch # git checkout -q -f -B kisskb 308f765116e9176bf508c10b72ca80ad594e3119 # git clean -qxdf # < git log -1 # commit 308f765116e9176bf508c10b72ca80ad594e3119 # Author: Gustavo A. R. Silva # Date: Mon Aug 24 15:20:04 2020 -0500 # # lib: Revert use of fallthrough pseudo-keyword # # The following build error 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; # | ^~~~~~~~~~~ # arch/powerpc/boot/../../../lib/xz/xz_dec_stream.c:586:4: note: each undeclared identifier is reported only once for each function it appears in # In file included from arch/powerpc/boot/../../../lib/decompress_unxz.c:235, # from arch/powerpc/boot/decompress.c:38: # arch/powerpc/boot/../../../lib/xz/xz_dec_lzma2.c: In function 'xz_dec_lzma2_run': # arch/powerpc/boot/../../../lib/xz/xz_dec_lzma2.c:1046:4: error: 'fallthrough' undeclared (first use in this function) # 1046 | fallthrough; # | ^~~~~~~~~~~ # make[2]: *** [arch/powerpc/boot/Makefile:215: arch/powerpc/boot/decompress.o] Error 1 # make[2]: Target 'arch/powerpc/boot/zImage' not remade because of errors. # make[1]: *** [arch/powerpc/Makefile:295: zImage] Error 2 # make: *** [Makefile:335: __build_one_by_one] Error 2 # make: Target 'distclean' not remade because of errors. # make: Target 'powernv_defconfig' not remade because of errors. # make: Target 'zImage' not remade because of errors. # # 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 # < /opt/cross/kisskb/korg/gcc-8.1.0-nolibc/s390-linux/bin/s390-linux-gcc --version # < /opt/cross/kisskb/korg/gcc-8.1.0-nolibc/s390-linux/bin/s390-linux-ld --version # < git log --format=%s --max-count=1 308f765116e9176bf508c10b72ca80ad594e3119 # < make -s -j 8 ARCH=s390 O=/kisskb/build/gustavoars_s390-allmodconfig_s390x-gcc8 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-8.1.0-nolibc/s390-linux/bin/s390-linux- allmodconfig # Added to kconfig CONFIG_BUILD_DOCSRC=n # Added to kconfig CONFIG_MODULE_SIG=n # Added to kconfig CONFIG_SAMPLES=n # < make -s -j 8 ARCH=s390 O=/kisskb/build/gustavoars_s390-allmodconfig_s390x-gcc8 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-8.1.0-nolibc/s390-linux/bin/s390-linux- help # make -s -j 8 ARCH=s390 O=/kisskb/build/gustavoars_s390-allmodconfig_s390x-gcc8 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-8.1.0-nolibc/s390-linux/bin/s390-linux- olddefconfig # make -s -j 8 ARCH=s390 O=/kisskb/build/gustavoars_s390-allmodconfig_s390x-gcc8 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-8.1.0-nolibc/s390-linux/bin/s390-linux- /kisskb/src/drivers/input/joystick/analog.c:160:2: warning: #warning Precise timer not defined for this architecture. [-Wcpp] #warning Precise timer not defined for this architecture. ^~~~~~~ In file included from /kisskb/src/drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c:41: /kisskb/src/drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c: In function 'mvpp2_setup_bm_pool': /kisskb/src/drivers/net/ethernet/marvell/mvpp2/mvpp2.h:647:2: warning: overflow in conversion from 'long unsigned int' to 'int' changes value from '18446744073709551584' to '-32' [-Woverflow] ((total_size) - MVPP2_SKB_HEADROOM - MVPP2_SKB_SHINFO_SIZE) ^ /kisskb/src/drivers/net/ethernet/marvell/mvpp2/mvpp2.h:714:33: note: in expansion of macro 'MVPP2_RX_MAX_PKT_SIZE' #define MVPP2_BM_SHORT_PKT_SIZE MVPP2_RX_MAX_PKT_SIZE(MVPP2_BM_SHORT_FRAME_SIZE) ^~~~~~~~~~~~~~~~~~~~~ /kisskb/src/drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c:652:41: note: in expansion of macro 'MVPP2_BM_SHORT_PKT_SIZE' mvpp2_pools[MVPP2_BM_SHORT].pkt_size = MVPP2_BM_SHORT_PKT_SIZE; ^~~~~~~~~~~~~~~~~~~~~~~ /kisskb/src/drivers/gpu/drm/rockchip/cdn-dp-core.c:1124:12: warning: 'cdn_dp_resume' defined but not used [-Wunused-function] static int cdn_dp_resume(struct device *dev) ^~~~~~~~~~~~~ /kisskb/src/drivers/staging/media/tegra-vde/vde.c:916:12: warning: 'tegra_vde_runtime_suspend' defined but not used [-Wunused-function] static int tegra_vde_runtime_suspend(struct device *dev) ^~~~~~~~~~~~~~~~~~~~~~~~~ Completed OK # rm -rf /kisskb/build/gustavoars_s390-allmodconfig_s390x-gcc8 # Build took: 0:31:00.142176