Re: [PATCH] irq: export handle_simple_irq, irq_modify_status, irq_to_desc, irq_alloc_descs and irq_free_descs

Jonathan Cameron
2011-05-16T08:24:10Z

On 05/14/11 16:52, Thomas Gleixner wrote:
> On Fri, 13 May 2011, Jonathan Cameron wrote:
>
>> On 05/13/11 16:17, Thomas Gleixner wrote:
>>> On Fri, 13 May 2011, Jonathan Cameron wrote:
>>>
>>>> Hi Thomas.
>>>>
>>>> Just a quick request that you give a yes or no to this.
>>>>
>>>> Thanks and sorry for repeated pestering!
>>>
>>> Sorry for the delay.
>>>
>>>>>> /**
>>>>>> * irq_cpu_online - Invoke all irq_cpu_online functions.
>>>>>> diff --git a/kernel/irq/irqdesc.c b/kernel/irq/irqdesc.c
>>>>>> index 2c039c9..5ac14e2 100644
>>>>>> --- a/kernel/irq/irqdesc.c
>>>>>> +++ b/kernel/irq/irqdesc.c
>>>>>> @@ -110,6 +110,7 @@ struct irq_desc *irq_to_desc(unsigned int irq)
>>>>>> {
>>>>>> return radix_tree_lookup(&irq_desc_tree, irq);
>>>>>> }
>>>>>> +EXPORT_SYMBOL_GPL(irq_to_desc);
>>>
>>> I'm fine with that, just this one makes me a bit wary.
>> It does feel a little fishy. For reference of others - it's required as
>> generic_handle_irq is inline in the irqdesc.h and uses it.
>
> I know and there is no real reason why generic_handle_irq needs to be
> inline.

So you would be happy with moving generic_handle_irq implementation
out of irqdesc.h and exporting that instead of irq_to_desc?

The element that isn't obvious to me is where should generic_handle_irq go?
(i.e. which file?) I'm afraid I'm not familiar enough with the generic irq
stuff to get this right!

Thanks,

Jonathan