RE: [PATCH v1] sched/topology: Make compiler happy about unused constant definitions

From: David Laight
Date: Tue Aug 25 2020 - 06:23:12 EST


From: Andy Shevchenko
> Sent: 25 August 2020 09:27
>
> On Mon, Aug 24, 2020 at 06:09:41PM +0100, Valentin Schneider wrote:
> > On 24/08/20 16:39, Andy Shevchenko wrote:
> > > Compilation of almost each file ends up with
> > >
> > > In file included from .../include/linux/energy_model.h:10,
> > > from .../include/linux/device.h:16,
> > > from .../drivers/spi/spi.c:8:
> > > .../include/linux/sched/topology.h:30:27: warning: ‘SD_DEGENERATE_GROUPS_MASK’ defined but not
> used [-Wunused-const-variable=]
> > > 30 | static const unsigned int SD_DEGENERATE_GROUPS_MASK =
> > > | ^~~~~~~~~~~~~~~~~~~~~~~~~
> > > ...
> > >
> > > Make compiler happy by annotating the static constants with __maybwe_unused.
> > >
> >
> > That should see some use as long as the build is for SMP. This whole region
> > is guarded by #ifdef CONFIG_SMP, so an !SMP build shouldn't trigger this.
>
> Isn't SMP is default for most of the kernel builds?
> And honestly I didn't get the purpose of this comment.

The real fix is to not use 'static const' in C.
IIRC it is still a memory location (that can be patched) not
a compile time constant.

David

-
Registered Address Lakeside, Bramley Road, Mount Farm, Milton Keynes, MK1 1PT, UK
Registration No: 1397386 (Wales)