* [PATCH] Fixes q40_irq_startup to return -ENXIO
@ 2014-06-30 3:06 Nicholas Krause
0 siblings, 0 replies; 4+ messages in thread
From: Nicholas Krause @ 2014-06-30 3:06 UTC (permalink / raw)
To: geert; +Cc: linux-m68k, linux-kernel
Fixes q40_irq_startup to return -ENXIO for cases 11-13 in the switch
statement of this function to handle these failure cases.
Signed-off-by: Nicholas Krause <xerofoify@gmail.com>
---
arch/m68k/q40/q40ints.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/m68k/q40/q40ints.c b/arch/m68k/q40/q40ints.c
index 513f9bb..9dfa1ea 100644
--- a/arch/m68k/q40/q40ints.c
+++ b/arch/m68k/q40/q40ints.c
@@ -49,7 +49,7 @@ static unsigned int q40_irq_startup(struct irq_data *data)
case 1: case 2: case 8: case 9:
case 11: case 12: case 13:
printk("%s: ISA IRQ %d not implemented by HW\n", __func__, irq);
- /* FIXME return -ENXIO; */
+ return -ENXIO;
}
return 0;
}
--
1.9.1
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH] Fixes q40_irq_startup to return -ENXIO
[not found] <1404097610-5739-1-git-send-email-xerofoify@gmail.com>
@ 2014-06-30 17:27 ` Andreas Schwab
2014-06-30 17:52 ` Geert Uytterhoeven
[not found] ` <CAMuHMdXFf0VXJikw1d6b6NAC91NUfDvw64oEME=fc7=+Sms98g@mail.gmail.com>
0 siblings, 2 replies; 4+ messages in thread
From: Andreas Schwab @ 2014-06-30 17:27 UTC (permalink / raw)
To: Nicholas Krause; +Cc: geert, linux-m68k, linux-kernel
Nicholas Krause <xerofoify@gmail.com> writes:
> Fixes q40_irq_startup to return -ENXIO for cases 11-13 in the switch
> statement of this function to handle these failure cases.
>
> Signed-off-by: Nicholas Krause <xerofoify@gmail.com>
> ---
> arch/m68k/q40/q40ints.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/arch/m68k/q40/q40ints.c b/arch/m68k/q40/q40ints.c
> index 513f9bb..9dfa1ea 100644
> --- a/arch/m68k/q40/q40ints.c
> +++ b/arch/m68k/q40/q40ints.c
> @@ -49,7 +49,7 @@ static unsigned int q40_irq_startup(struct irq_data *data)
> case 1: case 2: case 8: case 9:
> case 11: case 12: case 13:
> printk("%s: ISA IRQ %d not implemented by HW\n", __func__, irq);
> - /* FIXME return -ENXIO; */
> + return -ENXIO;
There must be more to it, given the FIXME.
Andreas.
--
Andreas Schwab, schwab@linux-m68k.org
GPG Key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5
"And now for something completely different."
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] Fixes q40_irq_startup to return -ENXIO
2014-06-30 17:27 ` [PATCH] Fixes q40_irq_startup to return -ENXIO Andreas Schwab
@ 2014-06-30 17:52 ` Geert Uytterhoeven
[not found] ` <CAMuHMdXFf0VXJikw1d6b6NAC91NUfDvw64oEME=fc7=+Sms98g@mail.gmail.com>
1 sibling, 0 replies; 4+ messages in thread
From: Geert Uytterhoeven @ 2014-06-30 17:52 UTC (permalink / raw)
To: Andreas Schwab
Cc: Nicholas Krause, linux-m68k, linux-kernel@vger.kernel.org,
Thomas Gleixner
On Mon, Jun 30, 2014 at 7:27 PM, Andreas Schwab <schwab@linux-m68k.org> wrote:
> Nicholas Krause <xerofoify@gmail.com> writes:
>
>> Fixes q40_irq_startup to return -ENXIO for cases 11-13 in the switch
>> statement of this function to handle these failure cases.
>>
>> Signed-off-by: Nicholas Krause <xerofoify@gmail.com>
>> ---
>> arch/m68k/q40/q40ints.c | 2 +-
>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/arch/m68k/q40/q40ints.c b/arch/m68k/q40/q40ints.c
>> index 513f9bb..9dfa1ea 100644
>> --- a/arch/m68k/q40/q40ints.c
>> +++ b/arch/m68k/q40/q40ints.c
>> @@ -49,7 +49,7 @@ static unsigned int q40_irq_startup(struct irq_data *data)
>> case 1: case 2: case 8: case 9:
>> case 11: case 12: case 13:
>> printk("%s: ISA IRQ %d not implemented by HW\n", __func__, irq);
>> - /* FIXME return -ENXIO; */
>> + return -ENXIO;
>
> There must be more to it, given the FIXME.
I think I really just forgot to get rid of it. It was introduced in commit
c288bf2533e57174b90b07860c4391bcd1ea269c ("m68k/irq: Rename
irq_controller to irq_chip").
I think I added the FIXME because I got puzzled by the return value change
from (signed) int to unsigned int, which doesn't match well with a negative
error number.
However:
1. While irq_chip.irq_startup() returns unsigned int, irq_startup()
does return
int (why this difference, historical reasons?), so it becomes a negative
number again later,
2. The return value of irq_startup() seems to used in
kernel/irq/autoprobe.c:probe_irq_on() only, and the actual (non-zero) value
doesn't matter, just whether it returns zero or non-zero.
So I'm gonna take this patch, unless someone screams with a very good reason.
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] Fixes q40_irq_startup to return -ENXIO
[not found] ` <CAMuHMdXFf0VXJikw1d6b6NAC91NUfDvw64oEME=fc7=+Sms98g@mail.gmail.com>
@ 2014-07-01 1:56 ` Nick Krause
0 siblings, 0 replies; 4+ messages in thread
From: Nick Krause @ 2014-07-01 1:56 UTC (permalink / raw)
To: Geert Uytterhoeven
Cc: Andreas Schwab, linux-m68k, linux-kernel@vger.kernel.org,
Thomas Gleixner
Seems fair if there is another way of doing it then I will rewrite this patch.
Cheers Nick
On Mon, Jun 30, 2014 at 1:52 PM, Geert Uytterhoeven
<geert@linux-m68k.org> wrote:
> On Mon, Jun 30, 2014 at 7:27 PM, Andreas Schwab <schwab@linux-m68k.org> wrote:
>> Nicholas Krause <xerofoify@gmail.com> writes:
>>
>>> Fixes q40_irq_startup to return -ENXIO for cases 11-13 in the switch
>>> statement of this function to handle these failure cases.
>>>
>>> Signed-off-by: Nicholas Krause <xerofoify@gmail.com>
>>> ---
>>> arch/m68k/q40/q40ints.c | 2 +-
>>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>>
>>> diff --git a/arch/m68k/q40/q40ints.c b/arch/m68k/q40/q40ints.c
>>> index 513f9bb..9dfa1ea 100644
>>> --- a/arch/m68k/q40/q40ints.c
>>> +++ b/arch/m68k/q40/q40ints.c
>>> @@ -49,7 +49,7 @@ static unsigned int q40_irq_startup(struct irq_data *data)
>>> case 1: case 2: case 8: case 9:
>>> case 11: case 12: case 13:
>>> printk("%s: ISA IRQ %d not implemented by HW\n", __func__, irq);
>>> - /* FIXME return -ENXIO; */
>>> + return -ENXIO;
>>
>> There must be more to it, given the FIXME.
>
> I think I really just forgot to get rid of it. It was introduced in commit
> c288bf2533e57174b90b07860c4391bcd1ea269c ("m68k/irq: Rename
> irq_controller to irq_chip").
>
> I think I added the FIXME because I got puzzled by the return value change
> from (signed) int to unsigned int, which doesn't match well with a negative
> error number.
>
> However:
> 1. While irq_chip.irq_startup() returns unsigned int, irq_startup()
> does return
> int (why this difference, historical reasons?), so it becomes a negative
> number again later,
> 2. The return value of irq_startup() seems to used in
> kernel/irq/autoprobe.c:probe_irq_on() only, and the actual (non-zero) value
> doesn't matter, just whether it returns zero or non-zero.
>
> So I'm gonna take this patch, unless someone screams with a very good reason.
>
> Gr{oetje,eeting}s,
>
> Geert
>
> --
> Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org
>
> In personal conversations with technical people, I call myself a hacker. But
> when I'm talking to journalists I just say "programmer" or something like that.
> -- Linus Torvalds
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2014-07-01 1:56 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <1404097610-5739-1-git-send-email-xerofoify@gmail.com>
2014-06-30 17:27 ` [PATCH] Fixes q40_irq_startup to return -ENXIO Andreas Schwab
2014-06-30 17:52 ` Geert Uytterhoeven
[not found] ` <CAMuHMdXFf0VXJikw1d6b6NAC91NUfDvw64oEME=fc7=+Sms98g@mail.gmail.com>
2014-07-01 1:56 ` Nick Krause
2014-06-30 3:06 Nicholas Krause
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox