1
0
Fork 0
alistair23-linux/drivers/misc/cxl
Ian Munsie 2cd55c68c0 cxl: Fix build failure due to -Wunused-variable behaviour change
A recent change in gcc caused this build failure:

/var/lib/jenkins/workspace/gcc_kernel_build/linux/drivers/misc/cxl/cxl.h:72:27:
error: ‘CXL_PSL_DLCNTL’ defined but not used [-Werror=unused-const-variable]
 static const cxl_p1_reg_t CXL_PSL_DLCNTL  = {0x0060};

Because of this gcc commit:

Commit 1bca8cbd0c68366f07277f98ce6963e10c2aa617 by mark
PR28901 -Wunused-variable ignores unused const initialised variables in C
12 years ago it was decided that -Wunused-variable shouldn't warn about
static const variables because some code used const static char rcsid[]
strings which were never used but wanted in the code anyway. But as the
bug points out this hides some real bugs. These days the usage of
rcsids is not very popular anymore. So this patch changes the default
to warn about unused static const variables in C with
-Wunused-variable. And it adds a new option -Wno-unused-const-variable
to turn this warning off. For C++ this new warning is off by default,
since const variables can be used as #defines in C++. New testcases for
the new defaults in C and C++ are included testing the new warning and
suppressing it with an unused attribute or using
-Wno-unused-const-variable. gcc/ChangeLog

The cxl driver uses static consts in place of #defines in some cases
for type safety, so this change causes the driver to fail to build on
new copilers as these constants are not all used in every file that
imports the header. Suppress the warning for this driver to return to
the old behaviour of -Wunused-variable.

Reported-by: Anton Blanchard <anton@au1.ibm.com>
Signed-off-by: Ian Munsie <imunsie@au1.ibm.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
2015-09-15 19:33:51 +10:00
..
Kconfig cxl: Add CONFIG_CXL_EEH symbol 2015-08-17 13:56:29 +10:00
Makefile cxl: Fix build failure due to -Wunused-variable behaviour change 2015-09-15 19:33:51 +10:00
api.c cxl: Fix force unmapping mmaps of contexts allocated through the kernel api 2015-08-30 18:47:26 +10:00
base.c cxl: Move include file cxl.h -> cxl-base.h 2015-06-03 13:27:19 +10:00
context.c cxl: Fix force unmapping mmaps of contexts allocated through the kernel api 2015-08-30 18:47:26 +10:00
cxl.h cxl: Set up and enable PSL Timebase 2015-08-30 18:56:34 +10:00
debugfs.c cxl: sparse: Silence iomem warning in debugfs file creation 2015-08-12 14:49:29 +10:00
fault.c cxl: Only check pid for userspace contexts 2015-06-03 13:27:18 +10:00
file.c cxl: Add alternate MMIO error handling 2015-08-18 19:34:43 +10:00
irq.c cxl: Release irqs if memory allocation fails 2015-08-27 13:51:18 +10:00
main.c cxl: Destroy cxl_adapter_idr on module_exit 2015-07-16 14:14:55 +10:00
native.c cxl: Allocate and release the SPA with the AFU 2015-08-14 21:32:04 +10:00
pci.c cxl: Fix unbalanced pci_dev_get in cxl_probe 2015-09-15 19:33:38 +10:00
sysfs.c powerpc updates for 4.3 2015-09-03 16:41:38 -07:00
trace.c cxl: Add tracepoints 2015-01-22 17:31:51 +11:00
trace.h cxl: use more common format specifier 2015-07-13 10:10:54 +10:00
vphb.c cxl: abort cxl_pci_enable_device_hook() if PCI channel is offline 2015-09-07 20:14:24 +10:00