[PATCH 00/34] address all -Wunused-const warnings

Arnd Bergmann arnd at kernel.org
Wed Apr 3 08:06:18 UTC 2024


From: Arnd Bergmann <arnd at arndb.de>

Compilers traditionally warn for unused 'static' variables, but not
if they are constant. The reason here is a custom for C++ programmers
to define named constants as 'static const' variables in header files
instead of using macros or enums.

In W=1 builds, we get warnings only static const variables in C
files, but not in headers, which is a good compromise, but this still
produces warning output in at least 30 files. These warnings are
almost all harmless, but also trivial to fix, and there is no
good reason to warn only about the non-const variables being unused.

I've gone through all the files that I found using randconfig and
allmodconfig builds and created patches to avoid these warnings,
with the goal of retaining a clean build once the option is enabled
by default.

Unfortunately, there is one fairly large patch ("drivers: remove
incorrect of_match_ptr/ACPI_PTR annotations") that touches
34 individual drivers that all need the same one-line change.
If necessary, I can split it up by driver or by subsystem,
but at least for reviewing I would keep it as one piece for
the moment.

Please merge the individual patches through subsystem trees.
I expect that some of these will have to go through multiple
revisions before they are picked up, so anything that gets
applied early saves me from resending.

        Arnd

Arnd Bergmann (31):
  powerpc/fsl-soc: hide unused const variable
  ubsan: fix unused variable warning in test module
  platform: goldfish: remove ACPI_PTR() annotations
  i2c: pxa: hide unused icr_bits[] variable
  3c515: remove unused 'mtu' variable
  tracing: hide unused ftrace_event_id_fops
  Input: synaptics: hide unused smbus_pnp_ids[] array
  power: rt9455: hide unused rt9455_boost_voltage_values
  efi: sysfb: don't build when EFI is disabled
  clk: ti: dpll: fix incorrect #ifdef checks
  apm-emulation: hide an unused variable
  sisfb: hide unused variables
  dma/congiguous: avoid warning about unused size_bytes
  leds: apu: remove duplicate DMI lookup data
  iio: ad5755: hook up of_device_id lookup to platform driver
  greybus: arche-ctrl: move device table to its right location
  lib: checksum: hide unused expected_csum_ipv6_magic[]
  sunrpc: suppress warnings for unused procfs functions
  comedi: ni_atmio: avoid warning for unused device_ids[] table
  iwlegacy: don't warn for unused variables with DEBUG_FS=n
  drm/komeda: don't warn for unused debugfs files
  firmware: qcom_scm: mark qcom_scm_qseecom_allowlist as __maybe_unused
  crypto: ccp - drop platform ifdef checks
  usb: gadget: omap_udc: remove unused variable
  isdn: kcapi: don't build unused procfs code
  cpufreq: intel_pstate: hide unused intel_pstate_cpu_oob_ids[]
  net: xgbe: remove extraneous #ifdef checks
  Input: imagis - remove incorrect ifdef checks
  sata: mv: drop unnecessary #ifdef checks
  ASoC: remove incorrect of_match_ptr/ACPI_PTR annotations
  spi: remove incorrect of_match_ptr annotations
  drivers: remove incorrect of_match_ptr/ACPI_PTR annotations
  kbuild: always enable -Wunused-const-variable

Krzysztof Kozlowski (1):
  Input: stmpe-ts - mark OF related data as maybe unused

 arch/powerpc/sysdev/fsl_msi.c                 |  2 +
 drivers/ata/sata_mv.c                         | 64 +++++++++----------
 drivers/char/apm-emulation.c                  |  5 +-
 drivers/char/ipmi/ipmb_dev_int.c              |  2 +-
 drivers/char/tpm/tpm_ftpm_tee.c               |  2 +-
 drivers/clk/ti/dpll.c                         | 10 ++-
 drivers/comedi/drivers/ni_atmio.c             |  2 +-
 drivers/cpufreq/intel_pstate.c                |  2 +
 drivers/crypto/ccp/sp-platform.c              | 14 +---
 drivers/dma/img-mdc-dma.c                     |  2 +-
 drivers/firmware/efi/Makefile                 |  3 +-
 drivers/firmware/efi/sysfb_efi.c              |  2 -
 drivers/firmware/qcom/qcom_scm.c              |  2 +-
 drivers/fpga/versal-fpga.c                    |  2 +-
 .../gpu/drm/arm/display/komeda/komeda_dev.c   |  8 ---
 drivers/hid/hid-google-hammer.c               |  6 +-
 drivers/i2c/busses/i2c-pxa.c                  |  2 +-
 drivers/i2c/muxes/i2c-mux-ltc4306.c           |  2 +-
 drivers/i2c/muxes/i2c-mux-reg.c               |  2 +-
 drivers/iio/dac/ad5755.c                      |  1 +
 drivers/input/mouse/synaptics.c               |  2 +
 drivers/input/touchscreen/imagis.c            |  4 +-
 drivers/input/touchscreen/stmpe-ts.c          |  2 +-
 drivers/input/touchscreen/wdt87xx_i2c.c       |  2 +-
 drivers/isdn/capi/Makefile                    |  3 +-
 drivers/isdn/capi/kcapi.c                     |  7 +-
 drivers/leds/leds-apu.c                       |  3 +-
 drivers/mux/adg792a.c                         |  2 +-
 drivers/net/ethernet/3com/3c515.c             |  3 -
 drivers/net/ethernet/amd/xgbe/xgbe-platform.c |  8 ---
 drivers/net/ethernet/apm/xgene-v2/main.c      |  2 +-
 drivers/net/ethernet/hisilicon/hns_mdio.c     |  2 +-
 drivers/net/wireless/intel/iwlegacy/4965-rs.c | 15 +----
 drivers/net/wireless/intel/iwlegacy/common.h  |  2 -
 drivers/platform/goldfish/goldfish_pipe.c     |  2 +-
 drivers/power/supply/rt9455_charger.c         |  2 +
 drivers/regulator/pbias-regulator.c           |  2 +-
 drivers/regulator/twl-regulator.c             |  2 +-
 drivers/regulator/twl6030-regulator.c         |  2 +-
 drivers/rtc/rtc-fsl-ftm-alarm.c               |  2 +-
 drivers/scsi/hisi_sas/hisi_sas_v1_hw.c        |  2 +-
 drivers/scsi/hisi_sas/hisi_sas_v2_hw.c        |  2 +-
 drivers/spi/spi-armada-3700.c                 |  2 +-
 drivers/spi/spi-img-spfi.c                    |  2 +-
 drivers/spi/spi-meson-spicc.c                 |  2 +-
 drivers/spi/spi-meson-spifc.c                 |  2 +-
 drivers/spi/spi-orion.c                       |  2 +-
 drivers/spi/spi-pic32-sqi.c                   |  2 +-
 drivers/spi/spi-pic32.c                       |  2 +-
 drivers/spi/spi-rockchip.c                    |  2 +-
 drivers/spi/spi-s3c64xx.c                     |  2 +-
 drivers/spi/spi-st-ssc4.c                     |  2 +-
 drivers/staging/greybus/arche-apb-ctrl.c      |  1 +
 drivers/staging/greybus/arche-platform.c      |  9 +--
 drivers/staging/pi433/pi433_if.c              |  2 +-
 drivers/tty/serial/amba-pl011.c               |  6 +-
 drivers/tty/serial/ma35d1_serial.c            |  2 +-
 drivers/usb/gadget/udc/omap_udc.c             | 10 +--
 drivers/video/fbdev/sis/init301.c             |  3 +-
 kernel/dma/contiguous.c                       |  2 +-
 kernel/trace/trace_events.c                   |  4 ++
 lib/checksum_kunit.c                          |  2 +
 lib/test_ubsan.c                              |  2 +-
 net/sunrpc/cache.c                            | 10 +--
 scripts/Makefile.extrawarn                    |  1 -
 sound/soc/atmel/sam9x5_wm8731.c               |  2 +-
 sound/soc/codecs/rt5514-spi.c                 |  2 +-
 sound/soc/qcom/lpass-sc7280.c                 |  2 +-
 sound/soc/samsung/aries_wm8994.c              |  2 +-
 69 files changed, 121 insertions(+), 169 deletions(-)

-- 
2.39.2

Cc: Michael Ellerman <mpe at ellerman.id.au>
Cc: Christophe Leroy <christophe.leroy at csgroup.eu>
Cc: Damien Le Moal <dlemoal at kernel.org>
Cc: Jiri Kosina <jikos at kernel.org>
Cc: Greg Kroah-Hartman <gregkh at linuxfoundation.org>
Cc: Corey Minyard <minyard at acm.org>
Cc: Peter Huewe <peterhuewe at gmx.de>
Cc: Jarkko Sakkinen <jarkko at kernel.org>
Cc: Tero Kristo <kristo at kernel.org>
Cc: Stephen Boyd <sboyd at kernel.org>
Cc: Ian Abbott <abbotti at mev.co.uk>
Cc: H Hartley Sweeten <hsweeten at visionengravers.com>
Cc: Srinivas Pandruvada <srinivas.pandruvada at linux.intel.com>
Cc: Len Brown <lenb at kernel.org>
Cc: "Rafael J. Wysocki" <rafael at kernel.org>
Cc: John Allen <john.allen at amd.com>
Cc: Herbert Xu <herbert at gondor.apana.org.au>
Cc: Vinod Koul <vkoul at kernel.org>
Cc: Ard Biesheuvel <ardb at kernel.org>
Cc: Bjorn Andersson <andersson at kernel.org>
Cc: Moritz Fischer <mdf at kernel.org>
Cc: Liviu Dudau <liviu.dudau at arm.com>
Cc: Benjamin Tissoires <benjamin.tissoires at redhat.com>
Cc: Andi Shyti <andi.shyti at kernel.org>
Cc: Michael Hennerich <michael.hennerich at analog.com>
Cc: Peter Rosin <peda at axentia.se>
Cc: Lars-Peter Clausen <lars at metafoo.de>
Cc: Jonathan Cameron <jic23 at kernel.org>
Cc: Dmitry Torokhov <dmitry.torokhov at gmail.com>
Cc: Markuss Broks <markuss.broks at gmail.com>
Cc: Alexandre Torgue <alexandre.torgue at foss.st.com>
Cc: Lee Jones <lee at kernel.org>
Cc: Jakub Kicinski <kuba at kernel.org>
Cc: Shyam Sundar S K <Shyam-sundar.S-k at amd.com>
Cc: Iyappan Subramanian <iyappan at os.amperecomputing.com>
Cc: Yisen Zhuang <yisen.zhuang at huawei.com>
Cc: Stanislaw Gruszka <stf_xl at wp.pl>
Cc: Kalle Valo <kvalo at kernel.org>
Cc: Sebastian Reichel <sre at kernel.org>
Cc: Tony Lindgren <tony at atomide.com>
Cc: Mark Brown <broonie at kernel.org>
Cc: Alexandre Belloni <alexandre.belloni at bootlin.com>
Cc: Xiang Chen <chenxiang66 at hisilicon.com>
Cc: "Martin K. Petersen" <martin.petersen at oracle.com>
Cc: Neil Armstrong <neil.armstrong at linaro.org>
Cc: Heiko Stuebner <heiko at sntech.de>
Cc: Krzysztof Kozlowski <krzysztof.kozlowski at linaro.org>
Cc: Vaibhav Hiremath <hvaibhav.linux at gmail.com>
Cc: Alex Elder <elder at kernel.org>
Cc: Jiri Slaby <jirislaby at kernel.org>
Cc: Jacky Huang <ychuang3 at nuvoton.com>
Cc: Helge Deller <deller at gmx.de>
Cc: Christoph Hellwig <hch at lst.de>
Cc: Robin Murphy <robin.murphy at arm.com>
Cc: Steven Rostedt <rostedt at goodmis.org>
Cc: Masami Hiramatsu <mhiramat at kernel.org>
Cc: Andrew Morton <akpm at linux-foundation.org>
Cc: Kees Cook <keescook at chromium.org>
Cc: Trond Myklebust <trond.myklebust at hammerspace.com>
Cc: Anna Schumaker <anna at kernel.org>
Cc: Masahiro Yamada <masahiroy at kernel.org>
Cc: Nathan Chancellor <nathan at kernel.org>
Cc: Takashi Iwai <tiwai at suse.com>
Cc: linuxppc-dev at lists.ozlabs.org
Cc: linux-kernel at vger.kernel.org
Cc: linux-ide at vger.kernel.org
Cc: openipmi-developer at lists.sourceforge.net
Cc: linux-integrity at vger.kernel.org
Cc: linux-omap at vger.kernel.org
Cc: linux-clk at vger.kernel.org
Cc: linux-pm at vger.kernel.org
Cc: linux-crypto at vger.kernel.org
Cc: dmaengine at vger.kernel.org
Cc: linux-efi at vger.kernel.org
Cc: linux-arm-msm at vger.kernel.org
Cc: linux-fpga at vger.kernel.org
Cc: dri-devel at lists.freedesktop.org
Cc: linux-input at vger.kernel.org
Cc: linux-i2c at vger.kernel.org
Cc: linux-iio at vger.kernel.org
Cc: linux-stm32 at st-md-mailman.stormreply.com
Cc: linux-arm-kernel at lists.infradead.org
Cc: netdev at vger.kernel.org
Cc: linux-leds at vger.kernel.org
Cc: linux-wireless at vger.kernel.org
Cc: linux-rtc at vger.kernel.org
Cc: linux-scsi at vger.kernel.org
Cc: linux-spi at vger.kernel.org
Cc: linux-amlogic at lists.infradead.org
Cc: linux-rockchip at lists.infradead.org
Cc: linux-samsung-soc at vger.kernel.org
Cc: greybus-dev at lists.linaro.org
Cc: linux-staging at lists.linux.dev
Cc: linux-serial at vger.kernel.org
Cc: linux-usb at vger.kernel.org
Cc: linux-fbdev at vger.kernel.org
Cc: iommu at lists.linux.dev
Cc: linux-trace-kernel at vger.kernel.org
Cc: kasan-dev at googlegroups.com
Cc: linux-hardening at vger.kernel.org
Cc: linux-nfs at vger.kernel.org
Cc: linux-kbuild at vger.kernel.org
Cc: alsa-devel at alsa-project.org
Cc: linux-sound at vger.kernel.org


More information about the dri-devel mailing list