Thread (5 messages) flat view 5 messages, 5 authors, 2021-11-14

Re: [arm-platforms:hack/m1-pmu 8/8] drivers/perf/apple_m1_cpu_pmu.c:100:32: warning: initializer overrides prior initialization of this subobject

From: Ard Biesheuvel <ardb@kernel.org>
Date: 2021-11-14 11:09:16
Also in: llvm, oe-kbuild-all
Subsystem: kernel build + files below scripts/ (unless maintained elsewhere), the rest · Maintainers: Nathan Chancellor, Nicolas Schier, Linus Torvalds

On Sun, 14 Nov 2021 at 11:11, Marc Zyngier [off-list ref] wrote:
On 2021-11-14 08:25, kernel test robot wrote:
quoted
tree:
https://git.kernel.org/pub/scm/linux/kernel/git/maz/arm-platforms.git
hack/m1-pmu
head:   a905c66ae0b391425e9ad7f261ad7b4c33af2c07
commit: a905c66ae0b391425e9ad7f261ad7b4c33af2c07 [8/8] drivers/perf:
Add Apple icestorm/firestorm CPU PMU driver
config: arm64-randconfig-r036-20211114 (attached as .config)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project
c3dddeeafb529e769cde87bd29ef6271ac6bfa5c)
reproduce (this is a W=1 build):
        wget
https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross
-O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # install arm64 cross compiling tool for clang build
        # apt-get install binutils-aarch64-linux-gnu
        #
https://git.kernel.org/pub/scm/linux/kernel/git/maz/arm-platforms.git/commit/?id=a905c66ae0b391425e9ad7f261ad7b4c33af2c07
        git remote add arm-platforms
https://git.kernel.org/pub/scm/linux/kernel/git/maz/arm-platforms.git
        git fetch --no-tags arm-platforms hack/m1-pmu
        git checkout a905c66ae0b391425e9ad7f261ad7b4c33af2c07
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1
ARCH=arm64

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <redacted>

All warnings (new ones prefixed by >>):
quoted
quoted
drivers/perf/apple_m1_cpu_pmu.c:100:32: warning: initializer
overrides prior initialization of this subobject
[-Winitializer-overrides]
           [M1_PMU_PERFCTR_UNKNOWN_01]     = BIT(7),
                                             ^~~~~~
   include/vdso/bits.h:7:19: note: expanded from macro 'BIT'
   #define BIT(nr)                 (UL(1) << (nr))
                                   ^~~~~~~~~~~~~~~
   drivers/perf/apple_m1_cpu_pmu.c:99:32: note: previous initialization
is here
           [0 ... M1_PMU_PERFCTR_LAST]     = ANY_BUT_0_1,
                                             ^~~~~~~~~~~
Oh please, not that thing again. I've commented on this many times,
and this warning is just bogus. Initialisation override is a necessity,
and working around this warning leads to something that is far less
maintainable, and thus more *dangerous* than this.

I really wish this warning was simply turned off, because it only
leads to the robot emails to be ignored do to the number of false
positives.
Agreed, very annoying indeed. Should we just do
diff --git a/scripts/Makefile.extrawarn b/scripts/Makefile.extrawarn
index d53825503874..feeed72fe011 100644
--- a/scripts/Makefile.extrawarn
+++ b/scripts/Makefile.extrawarn
@@ -36,6 +36,7 @@ KBUILD_CFLAGS += $(call cc-option, -Wstringop-truncation)
 KBUILD_CFLAGS += -Wno-missing-field-initializers
 KBUILD_CFLAGS += -Wno-sign-compare
 KBUILD_CFLAGS += -Wno-type-limits
+KBUILD_CFLAGS += $(call cc-option, -Wno-initializer-overrides)

 KBUILD_CPPFLAGS += -DKBUILD_EXTRA_WARN1
@@ -45,7 +46,6 @@ else
 # Suppress them by using -Wno... except for W=1.

 ifdef CONFIG_CC_IS_CLANG
-KBUILD_CFLAGS += -Wno-initializer-overrides
 KBUILD_CFLAGS += -Wno-format
 KBUILD_CFLAGS += -Wno-sign-compare
 KBUILD_CFLAGS += -Wno-format-zero-length
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help