# git rev-parse -q --verify 92387f33009308fd6d74a80a3573d7a0d2401905^{commit} 92387f33009308fd6d74a80a3573d7a0d2401905 already have revision, skipping fetch # git checkout -q -f -B kisskb 92387f33009308fd6d74a80a3573d7a0d2401905 # git clean -qxdf # < git log -1 # commit 92387f33009308fd6d74a80a3573d7a0d2401905 # Author: Nathan Chancellor # Date: Mon Aug 26 17:41:55 2019 -0700 # # kbuild: Do not enable -Wimplicit-fallthrough for clang for now # # This functionally reverts commit bfd77145f35c ("Makefile: Convert # -Wimplicit-fallthrough=3 to just -Wimplicit-fallthrough for clang"). # # clang enabled support for -Wimplicit-fallthrough in C in r369414 [1], # which causes a lot of warnings when building the kernel for two reasons: # # 1. Clang does not support the /* fall through */ comments. There seems # to be a general consensus in the LLVM community that this is not # something they want to support. Joe Perches wrote a script to convert # all of the comments to a "fallthrough" keyword that will be added to # compiler_attributes.h [2] [3], which catches the vast majority of the # comments. There doesn't appear to be any consensus in the kernel # community when to do this conversion. # # 2. Clang and GCC disagree about falling through to final case statements # with no content or cases that simply break: # # https://godbolt.org/z/c8csDu # # This difference contributes at least 50 warnings in an allyesconfig # build for x86, not considering other architectures. This difference # will need to be discussed to see which compiler is right [4] [5]. # # [1]: https://github.com/llvm/llvm-project/commit/1e0affb6e564b7361b0aadb38805f26deff4ecfc # [2]: https://lore.kernel.org/lkml/61ddbb86d5e68a15e24ccb06d9b399bbf5ce2da7.camel@perches.com/ # [3]: https://lore.kernel.org/lkml/1d2830aadbe9d8151728a7df5b88528fc72a0095.1564549413.git.joe@perches.com/ # [4]: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91432 # [5]: https://github.com/ClangBuiltLinux/linux/issues/636 # # Given these two problems need discussion and coordination, do not enable # -Wimplicit-fallthrough with clang right now. Add a comment to explain # what is going on as well. This commit should be reverted once these two # issues are fully flushed out and resolved. # # Suggested-by: Masahiro Yamada # Signed-off-by: Nathan Chancellor # Acked-by: Miguel Ojeda # Acked-by: Nick Desaulniers # Acked-by: Gustavo A. R. Silva # Signed-off-by: Masahiro Yamada # < /opt/cross/kisskb/gcc-4.6.3-nolibc/powerpc-linux/bin/powerpc-linux-gcc --version # < /opt/cross/kisskb/gcc-4.6.3-nolibc/powerpc-linux/bin/powerpc-linux-ld --version # < git log --format=%s --max-count=1 92387f33009308fd6d74a80a3573d7a0d2401905 # < make -s -j 120 ARCH=powerpc O=/kisskb/build/kbuild_mpc85xx_defconfig_powerpc-gcc4.6 CROSS_COMPILE=/opt/cross/kisskb/gcc-4.6.3-nolibc/powerpc-linux/bin/powerpc-linux- mpc85xx_defconfig # make -s -j 120 ARCH=powerpc O=/kisskb/build/kbuild_mpc85xx_defconfig_powerpc-gcc4.6 CROSS_COMPILE=/opt/cross/kisskb/gcc-4.6.3-nolibc/powerpc-linux/bin/powerpc-linux- /kisskb/src/kernel/printk/printk.c: In function 'devkmsg_sysctl_set_loglvl': /kisskb/src/kernel/printk/printk.c:194:16: warning: 'old' may be used uninitialized in this function [-Wuninitialized] /kisskb/src/drivers/base/regmap/regmap.c: In function 'regmap_raw_read': /kisskb/src/drivers/base/regmap/regmap.c:2591:6: warning: 'ret' may be used uninitialized in this function [-Wuninitialized] /kisskb/src/drivers/base/regmap/regmap.c: In function '_regmap_raw_write': /kisskb/src/drivers/base/regmap/regmap.c:1852:6: warning: 'ret' may be used uninitialized in this function [-Wuninitialized] /kisskb/src/sound/soc/codecs/wm8960.c: In function 'wm8960_configure_clocking': /kisskb/src/sound/soc/codecs/wm8960.c:800:70: warning: 'j' may be used uninitialized in this function [-Wuninitialized] /kisskb/src/sound/soc/codecs/wm8960.c:797:68: warning: 'i' may be used uninitialized in this function [-Wuninitialized] /kisskb/src/mm/hugetlb.c: In function 'alloc_pool_huge_page': /kisskb/src/mm/hugetlb.c:1465:5: warning: 'page' may be used uninitialized in this function [-Wuninitialized] /kisskb/src/fs/proc/inode.c: In function 'proc_reg_open': /kisskb/src/include/linux/list.h:65:12: warning: 'pdeo' may be used uninitialized in this function [-Wuninitialized] /kisskb/src/fs/proc/inode.c:338:21: note: 'pdeo' was declared here /kisskb/src/drivers/net/ethernet/freescale/fs_enet/mac-scc.c: In function 'allocate_bd': /kisskb/src/drivers/net/ethernet/freescale/fs_enet/mac-scc.c:139:6: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] /kisskb/src/drivers/tty/serial/8250/8250_core.c: In function 'univ8250_release_irq': /kisskb/src/drivers/tty/serial/8250/8250_core.c:248:18: warning: 'i' may be used uninitialized in this function [-Wuninitialized] /kisskb/src/drivers/tty/serial/8250/8250_core.c:228:19: note: 'i' was declared here /kisskb/src/fs/udf/unicode.c: In function 'udf_name_conv_char': /kisskb/src/fs/udf/unicode.c:132:8: warning: 'c' may be used uninitialized in this function [-Wuninitialized] /kisskb/src/drivers/usb/core/devio.c: In function 'async_completed': /kisskb/src/drivers/usb/core/devio.c:613:23: warning: 'errno' may be used uninitialized in this function [-Wuninitialized] WARNING: "ahci_em_messages" [vmlinux] is a static EXPORT_SYMBOL_GPL WARNING: "ftrace_set_clr_event" [vmlinux] is a static EXPORT_SYMBOL_GPL WARNING: "ahci_em_messages" [vmlinux] is a static EXPORT_SYMBOL_GPL WARNING: "ftrace_set_clr_event" [vmlinux] is a static EXPORT_SYMBOL_GPL /kisskb/src/arch/powerpc/boot/dts/fsl/mpc8541cds.dts:330.3-21: Warning (pci_device_bus_num): /pci@e0008000/i8259@19000:bus-range: PCI bus number 1 out of range, expected (0 - 0) /kisskb/src/arch/powerpc/boot/dts/fsl/mpc8555cds.dts:330.3-21: Warning (pci_device_bus_num): /pci@e0008000/i8259@19000:bus-range: PCI bus number 1 out of range, expected (0 - 0) INFO: Uncompressed kernel (size 0xc2968c) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xd00000) INFO: Uncompressed kernel (size 0xc2968c) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xd00000) INFO: Uncompressed kernel (size 0xc2968c) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xd00000) INFO: Uncompressed kernel (size 0xc2968c) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xd00000) INFO: Uncompressed kernel (size 0xc2968c) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xd00000) INFO: Uncompressed kernel (size 0xc2968c) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xd00000) INFO: Uncompressed kernel (size 0xc2968c) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xd00000) INFO: Uncompressed kernel (size 0xc2968c) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xd00000) INFO: Uncompressed kernel (size 0xc2968c) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xd00000) INFO: Uncompressed kernel (size 0xc2968c) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xd00000) INFO: Uncompressed kernel (size 0xc2968c) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xd00000) INFO: Uncompressed kernel (size 0xc2968c) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xd00000) INFO: Uncompressed kernel (size 0xc2968c) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xd00000) INFO: Uncompressed kernel (size 0xc2968c) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xd00000) INFO: Uncompressed kernel (size 0xc2968c) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xd00000) INFO: Uncompressed kernel (size 0xc18ec4) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0xd00000) Image Name: Linux-5.3.0-rc4-g92387f330093 Created: Fri Aug 30 02:11:06 2019 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 5892959 Bytes = 5754.84 KiB = 5.62 MiB Load Address: 00d00000 Entry Point: 00d002a8 Image Name: Linux-5.3.0-rc4-g92387f330093 Created: Fri Aug 30 02:11:06 2019 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 5892960 Bytes = 5754.84 KiB = 5.62 MiB Load Address: 00d00000 Entry Point: 00d002e8 Image Name: Linux-5.3.0-rc4-g92387f330093 Created: Fri Aug 30 02:11:06 2019 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 5893509 Bytes = 5755.38 KiB = 5.62 MiB Load Address: 00d00000 Entry Point: 00d002a8 Image Name: Linux-5.3.0-rc4-g92387f330093 Created: Fri Aug 30 02:11:06 2019 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 5893169 Bytes = 5755.05 KiB = 5.62 MiB Load Address: 00d00000 Entry Point: 00d002a8 Image Name: Linux-5.3.0-rc4-g92387f330093 Created: Fri Aug 30 02:11:06 2019 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 5861233 Bytes = 5723.86 KiB = 5.59 MiB Load Address: 00000000 Entry Point: 00000000 Image Name: Linux-5.3.0-rc4-g92387f330093 Created: Fri Aug 30 02:11:06 2019 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 5894870 Bytes = 5756.71 KiB = 5.62 MiB Load Address: 00d00000 Entry Point: 00d002a8 Image Name: Linux-5.3.0-rc4-g92387f330093 Created: Fri Aug 30 02:11:06 2019 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 5892831 Bytes = 5754.72 KiB = 5.62 MiB Load Address: 00d00000 Entry Point: 00d002e8 Image Name: Linux-5.3.0-rc4-g92387f330093 Created: Fri Aug 30 02:11:06 2019 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 5893517 Bytes = 5755.39 KiB = 5.62 MiB Load Address: 00d00000 Entry Point: 00d002a8 Image Name: Linux-5.3.0-rc4-g92387f330093 Created: Fri Aug 30 02:11:06 2019 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 5894819 Bytes = 5756.66 KiB = 5.62 MiB Load Address: 00d00000 Entry Point: 00d002a8 Image Name: Linux-5.3.0-rc4-g92387f330093 Created: Fri Aug 30 02:11:06 2019 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 5892832 Bytes = 5754.72 KiB = 5.62 MiB Load Address: 00d00000 Entry Point: 00d002e8 Image Name: Linux-5.3.0-rc4-g92387f330093 Created: Fri Aug 30 02:11:06 2019 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 5893356 Bytes = 5755.23 KiB = 5.62 MiB Load Address: 00d00000 Entry Point: 00d002a8 Image Name: Linux-5.3.0-rc4-g92387f330093 Created: Fri Aug 30 02:11:06 2019 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 5893483 Bytes = 5755.35 KiB = 5.62 MiB Load Address: 00d00000 Entry Point: 00d002a8 Image Name: Linux-5.3.0-rc4-g92387f330093 Created: Fri Aug 30 02:11:06 2019 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 5892842 Bytes = 5754.73 KiB = 5.62 MiB Load Address: 00d00000 Entry Point: 00d002a8 Image Name: Linux-5.3.0-rc4-g92387f330093 Created: Fri Aug 30 02:11:06 2019 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 5893614 Bytes = 5755.48 KiB = 5.62 MiB Load Address: 00d00000 Entry Point: 00d002e8 Image Name: Linux-5.3.0-rc4-g92387f330093 Created: Fri Aug 30 02:11:06 2019 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 5893653 Bytes = 5755.52 KiB = 5.62 MiB Load Address: 00d00000 Entry Point: 00d002e8 Image Name: Linux-5.3.0-rc4-g92387f330093 Created: Fri Aug 30 02:11:06 2019 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 5893350 Bytes = 5755.22 KiB = 5.62 MiB Load Address: 00d00000 Entry Point: 00d002a8 Completed OK # rm -rf /kisskb/build/kbuild_mpc85xx_defconfig_powerpc-gcc4.6 # Build took: 0:01:08.565460