Re: [tip:irq/core 6/17] ERROR: modpost: "irq_gc_mask_disable_and_ack_set" [drivers/irqchip/irq-brcmstb-l2.ko] undefined!

Dr. David Alan Gilbert
2025-01-16T01:01:09Z

* Dr. David Alan Gilbert (linux@treblig.org) wrote:
> * Florian Fainelli (florian.fainelli@broadcom.com) wrote:
> > On 1/15/25 13:53, Dr. David Alan Gilbert wrote:
> > > * kernel test robot (lkp@intel.com) wrote:
> > > > tree: https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git irq/core
> > > > head: 12cbdcb9f05559ff72eb8a04df829852804c0276
> > > > commit: dd1f17a9faf5359d76644236cde4cc1720f1184d [6/17] irqchip/irq-brcmstb-l2: Replace brcmstb_l2_mask_and_ack() by generic function
> > > > config: arm64-randconfig-002-20250115 (https://download.01.org/0day-ci/archive/20250116/202501160501.6r9pNtBg-lkp@intel.com/config)
> > > > compiler: aarch64-linux-gcc (GCC) 14.2.0
> > > > reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250116/202501160501.6r9pNtBg-lkp@intel.com/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@intel.com>
> > > > | Closes: https://lore.kernel.org/oe-kbuild-all/202501160501.6r9pNtBg-lkp@intel.com/
> > > >
> > > > All errors (new ones prefixed by >>, old ones prefixed by <<):
> > > >
> > > > > > ERROR: modpost: "irq_gc_mask_disable_and_ack_set" [drivers/irqchip/irq-brcmstb-l2.ko] undefined!
> > >
> > > Hmm, that's not happy is it - I'll have a look.
> >
> > We should be amending your original patch with the following:
> >
> > diff --git a/kernel/irq/generic-chip.c b/kernel/irq/generic-chip.c
> > index 32ffcbb87fa1..c4a8bca5f2b0 100644
> > --- a/kernel/irq/generic-chip.c
> > +++ b/kernel/irq/generic-chip.c
> > @@ -162,6 +162,7 @@ void irq_gc_mask_disable_and_ack_set(struct irq_data *d)
> > irq_reg_writel(gc, mask, ct->regs.ack);
> > irq_gc_unlock(gc);
> > }
> > +EXPORT_SYMBOL_GPL(irq_gc_mask_disable_and_ack_set);
> >
> > /**
> > * irq_gc_eoi - EOI interrupt
> >
> >
> > This was not going to be a problem back when Doug's commit was accepted, but
> > later on, irq-brcmsbtb-l2 was allowed to become modular with
> > 51d9db5c8fbbed160081d4cb5c193abdf67ded05 ("irqchip/irq-brcmstb-l2: Switch to
> > IRQCHIP_PLATFORM_DRIVER").
> >
> > This totally escaped me when I acked your patch making use of the generic
> > irq_gc_mask_disable_and_ack_set implementation.
>
> Thanks for spotting that; I'll give it a build test and post a v2 in
> a little while.

V2 sent:
Subject: [PATCH v2] irqchip/irq-brcmstb-l2: Replace brcmstb_l2_mask_and_ack() by generic function
Date: Thu, 16 Jan 2025 00:59:20 +0000
Message-ID: <20250116005920.626822-1-linux@treblig.org>

> Dave
>
> > --
> > Florian
> >
> --
> -----Open up your eyes, open up your mind, open up your code -------
> / Dr. David Alan Gilbert | Running GNU/Linux | Happy \
> \ dave @ treblig.org | | In Hex /
> \ _________________________|_____ http://www.treblig.org |_______/