[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <96c221b2-a373-3abf-b1e1-c79267798ecb@csgroup.eu>
Date: Thu, 10 Nov 2022 17:57:00 +0000
From: Christophe Leroy <christophe.leroy@...roup.eu>
To: Alan Stern <stern@...land.harvard.edu>
CC: Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"linux-usb@...r.kernel.org" <linux-usb@...r.kernel.org>
Subject: Re: [PATCH] usb: Replace NO_IRQ by 0
Le 06/10/2022 à 16:24, Alan Stern a écrit :
> On Thu, Oct 06, 2022 at 02:01:57PM +0000, Christophe Leroy wrote:
>>
>>
>> Le 06/10/2022 à 15:50, Alan Stern a écrit :
>>> On Thu, Oct 06, 2022 at 07:15:44AM +0200, Christophe Leroy wrote:
>>>> NO_IRQ is used to check the return of irq_of_parse_and_map().
>>>>
>>>> On some architecture NO_IRQ is 0, on other architectures it is -1.
>>>>
>>>> irq_of_parse_and_map() returns 0 on error, independent of NO_IRQ.
>>>
>>> This isn't clear. Does absence of an irq count as an error? In other
>>> words, will irq_of_parse_and_map() sometimes return 0 and other times
>>> return NO_IRQ? What about architectures on which 0 is a valid irq
>>> number?
>>
>> NO_IRQ doesn't exist anywhere in core functions. Only some drivers and
>> some architectures have relics of it.
>>
>> irq_of_parse_and_map() will always return 0 on error.
>>
>> 0 can't be a valid logical IRQ number. It may only be a valid hwirq
>> number but it will always be translated to a non-zero logical irq number.
>>
>> I'm trying to get rid of NO_IRQ completely in powerpc code, therefore
>> trying to clean-up all drivers used by powerpc architecture.
>>
>> Long time ago Linus advocated for not using NO_IRQ, see
>> https://lkml.org/lkml/2005/11/21/221
>
> Okay, good. Please resubmit the patch and include some of these things
> in the patch description.
I sent v2 with more details in the commit message.
Thanks
Christophe
Powered by blists - more mailing lists