[arm-platforms:hack/m1-pmu 8/8] drivers/perf/apple_m1_cpu_pmu.c:100:32: warning: initializer overrides prior initialization of this subobject
Ard Biesheuvel
ardb at kernel.org
Sun Nov 14 03:07:28 PST 2021
On Sun, 14 Nov 2021 at 11:11, Marc Zyngier <maz at kernel.org> wrote:
>
> On 2021-11-14 08:25, kernel test robot wrote:
> > 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 <lkp at intel.com>
> >
> > All warnings (new ones prefixed by >>):
> >
> >>> 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
More information about the linux-arm-kernel
mailing list