diff mbox series

[02/11] genirq: Export irq_to_desc() again to modules

Message ID 20210924170546.805663-3-f.fainelli@gmail.com (mailing list archive)
State Superseded
Headers show
Series Modular Broadcom irqchip drivers | expand

Commit Message

Florian Fainelli Sept. 24, 2021, 5:05 p.m. UTC
In order to build drivers/irqchip/irq-bcm7038-l1.c as a module (for use
in GKI), we need to export_to_desc() which is used in this snippet of
code:

	irqd_set_single_target(irq_desc_get_irq_data(irq_to_desc(virq)));

This effectively reverts 64a1b95bb9fe ("genirq: Restrict export of
irq_to_desc()").

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
---
 kernel/irq/irqdesc.c | 2 --
 1 file changed, 2 deletions(-)

Comments

Thomas Gleixner Sept. 25, 2021, 9 p.m. UTC | #1
On Fri, Sep 24 2021 at 10:05, Florian Fainelli wrote:
> In order to build drivers/irqchip/irq-bcm7038-l1.c as a module (for use
> in GKI), we need to export_to_desc() which is used in this snippet of
> code:
>
> 	irqd_set_single_target(irq_desc_get_irq_data(irq_to_desc(virq)));
>
> This effectively reverts 64a1b95bb9fe ("genirq: Restrict export of
> irq_to_desc()").

No. I'm not reexporting this. We've spent quite some time to prevent all
kind of drivers for fiddle with irq descriptors and I'm not going
to reopen that can of worms.

irq_get_irq_data() is exported and provides you what you need.

Thanks,

        tglx
Florian Fainelli Sept. 26, 2021, 2:29 a.m. UTC | #2
On 9/25/2021 2:00 PM, Thomas Gleixner wrote:
> On Fri, Sep 24 2021 at 10:05, Florian Fainelli wrote:
>> In order to build drivers/irqchip/irq-bcm7038-l1.c as a module (for use
>> in GKI), we need to export_to_desc() which is used in this snippet of
>> code:
>>
>> 	irqd_set_single_target(irq_desc_get_irq_data(irq_to_desc(virq)));
>>
>> This effectively reverts 64a1b95bb9fe ("genirq: Restrict export of
>> irq_to_desc()").
> 
> No. I'm not reexporting this. We've spent quite some time to prevent all
> kind of drivers for fiddle with irq descriptors and I'm not going
> to reopen that can of worms.
> 
> irq_get_irq_data() is exported and provides you what you need.

That is exactly what I was looking for and somehow missed it during my 
search the other day, thanks!
diff mbox series

Patch

diff --git a/kernel/irq/irqdesc.c b/kernel/irq/irqdesc.c
index 4e3c29bb603c..5bc231036042 100644
--- a/kernel/irq/irqdesc.c
+++ b/kernel/irq/irqdesc.c
@@ -352,9 +352,7 @@  struct irq_desc *irq_to_desc(unsigned int irq)
 {
 	return radix_tree_lookup(&irq_desc_tree, irq);
 }
-#ifdef CONFIG_KVM_BOOK3S_64_HV_MODULE
 EXPORT_SYMBOL_GPL(irq_to_desc);
-#endif
 
 static void delete_irq_desc(unsigned int irq)
 {