Re: [linux-next:master 9019/10049] drivers/irqchip/irq-gic-v3.c:47:23: warning: 'broken_rdists' defined but not used

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, 04 Jul 2024 11:27:28 +0100,
Catalin Marinas <catalin.marinas@xxxxxxx> wrote:
> 
> On Thu, Jul 04, 2024 at 10:05:05AM +0100, Marc Zyngier wrote:
> > On Thu, 04 Jul 2024 09:52:16 +0100,
> > Catalin Marinas <catalin.marinas@xxxxxxx> wrote:
> > > 
> > > On Tue, Jul 02, 2024 at 06:40:12PM +0800, kernel test robot wrote:
> > > > tree:   https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
> > > > head:   82e4255305c554b0bb18b7ccf2db86041b4c8b6e
> > > > commit: d633da5d3ab1a0eb26a2213d65da1e189e82f8ab [9019/10049] irqchip/gic-v3: Add support for ACPI's disabled but 'online capable' CPUs
> > > > config: arm-randconfig-r034-20220810 (https://download.01.org/0day-ci/archive/20240702/202407021807.cBuWVBVa-lkp@xxxxxxxxx/config)
> > > > compiler: arm-linux-gnueabi-gcc (GCC) 13.2.0
> > > > reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240702/202407021807.cBuWVBVa-lkp@xxxxxxxxx/reproduce)
> > > > 
> > > > If you fix the issue in a separate patch/commit (i.e. not just a new version of
> > > > the same patch/commit), kindly add following tags
> > > > | Reported-by: kernel test robot <lkp@xxxxxxxxx>
> > > > | Closes: https://lore.kernel.org/oe-kbuild-all/202407021807.cBuWVBVa-lkp@xxxxxxxxx/
> > > > 
> > > > All warnings (new ones prefixed by >>):
> > > > 
> > > > >> drivers/irqchip/irq-gic-v3.c:47:23: warning: 'broken_rdists' defined but not used [-Wunused-variable]
> > > >       47 | static struct cpumask broken_rdists __read_mostly;
> > > >          |                       ^~~~~~~~~~~~~
> > > > 
> > > > 
> > > > vim +/broken_rdists +47 drivers/irqchip/irq-gic-v3.c
> > > 
> > > This can happen when building on arm32 with SMP disabled. So we either
> > > add a __maybe_unused annotation or we move the variable further down in
> > > the CONFIG_SMP block. Marc, what's your preference?
> > > 
> > > -----------8<----------------------
> > > diff --git a/drivers/irqchip/irq-gic-v3.c b/drivers/irqchip/irq-gic-v3.c
> > > index c29b424d1d0c..6393f3d780e9 100644
> > > --- a/drivers/irqchip/irq-gic-v3.c
> > > +++ b/drivers/irqchip/irq-gic-v3.c
> > > @@ -47,7 +47,7 @@ static u8 dist_prio_nmi __ro_after_init = GICV3_PRIO_NMI;
> > >  
> > >  #define GIC_IRQ_TYPE_PARTITION	(GIC_IRQ_TYPE_LPI + 1)
> > >  
> > > -static struct cpumask broken_rdists __read_mostly;
> > > +static struct cpumask broken_rdists __read_mostly __maybe_unused;
> > >  
> > >  struct redist_region {
> > >  	void __iomem		*redist_base;
> > > -----------8<----------------------
> > > 
> > > or,
> > > 
> > > -----------8<----------------------
> > > diff --git a/drivers/irqchip/irq-gic-v3.c b/drivers/irqchip/irq-gic-v3.c
> > > index c29b424d1d0c..187948f41bb3 100644
> > > --- a/drivers/irqchip/irq-gic-v3.c
> > > +++ b/drivers/irqchip/irq-gic-v3.c
> > > @@ -47,8 +47,6 @@ static u8 dist_prio_nmi __ro_after_init = GICV3_PRIO_NMI;
> > >  
> > >  #define GIC_IRQ_TYPE_PARTITION	(GIC_IRQ_TYPE_LPI + 1)
> > >  
> > > -static struct cpumask broken_rdists __read_mostly;
> > > -
> > >  struct redist_region {
> > >  	void __iomem		*redist_base;
> > >  	phys_addr_t		phys_base;
> > > @@ -1316,6 +1314,8 @@ static void gic_cpu_init(void)
> > >  
> > >  #ifdef CONFIG_SMP
> > >  
> > > +static struct cpumask broken_rdists __read_mostly;
> > > +
> > >  #define MPIDR_TO_SGI_RS(mpidr)	(MPIDR_RS(mpidr) << ICC_SGI1R_RS_SHIFT)
> > >  #define MPIDR_TO_SGI_CLUSTER_ID(mpidr)	((mpidr) & ~0xFUL)
> > 
> > The second version seems to be the most logical one, since we already
> > have this SMP-only block (note to self: constraint GICv3 support to
> > SMP only at the earliest opportunity).
> > 
> > Feel free to add my
> > 
> > Acked-by: Marc Zyngier <maz@xxxxxxxxxx>
> > 
> > if you decide to push a fix on top of this branch.
> 
> Ah, it's also used in the CONFIG_ACPI block further down. So
> __maybe_unused may be easier. Or add some #if defined(CONFIG_SMP) ||
> defined(CONFIG_ACPI) but it seems too verbose.

Ah, of course. Go for the __maybe_unused then, it's not a big deal.

My Ack still stands.

Thanks,

	M.

-- 
Without deviation from the norm, progress is not possible.




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux