[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAMuHMdUYFWLHD+MjeeH_dmcVLSYn0Pb1MzYFdj0ryCBJqaSXjg@mail.gmail.com>
Date: Sat, 26 Jul 2014 17:57:06 +0200
From: Geert Uytterhoeven <geert@...ux-m68k.org>
To: Sasha Levin <sasha.levin@...cle.com>
Cc: Guenter Roeck <linux@...ck-us.net>,
Steven Rostedt <rostedt@...dmis.org>,
One Thousand Gnomes <gnomes@...rguk.ukuu.org.uk>,
Nick Krause <xerofoify@...il.com>,
"Linux/m68k" <linux-m68k@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
Sasha Levin <sashal@...nel.org>,
Thomas Gleixner <tglx@...utronix.de>,
Richard Zidlicky <rz@...ux-m68k.org>
Subject: Re: [PATCH] m68k/q40: Revert "m68k/q40: Fix q40_irq_startup() to
return -ENXIO on failures"
On Sat, Jul 26, 2014 at 5:33 PM, Sasha Levin <sasha.levin@...cle.com> wrote:
> On 07/26/2014 11:21 AM, Geert Uytterhoeven wrote:
>> I applied Nick's cleanup (which is not yet in mainline, just in the m68k repo)
>> because I thought Nick was right (in this particular case ;-), cfr. my
>> reasoning in www.spinics.net/lists/kernel/msg1774736.html
>>
>> W.r.t. the signess, I didn't see the compiler warning, as the version of gcc
>> I'm using didn't print that warning. However, irq_startup() converts the
>> value returned by .irq_startup() from unsigned to signed.
>> I assume this is just a missing conversion when the genirq framework
>> itself was introduced (m68k was converted quite late)?
>>
>> W.r.t. the actual value, any non-zero value is treated the same.
>> I can change it to 1, if that makes you feel better. If returning a non-zero
>> value here is wrong, presumable the code has been wrong since it
>> incarnation.
>>
>> As we're close to the opening of the merge window, it would be nice
>> if we could conclude on this ;-)
>
> From my standpoint there are two issues here:
>
> 1. The whole signed/unsigned mishmash here. Pretty much any solution
> besides implicitly converting a signed value into an unsigned one
> which then gets treated as something else entirely should be acceptable
> here.
>
> 2. Beyond semantics, the original patch also changed the behaviour of
> the code. What previously was a soft printk() is now a hard error.
> Does it break any systems? Cornercases? I dunno, but I can assure you
> that this wasn't tested at all.
If it broke something, it was most probably broken before
commit c288bf2533e57174b90b07860c4391bcd1ea269c ("m68k/irq:
Rename irq_controller to irq_chip"), too.
It seems the Q40 hardware cannot handle this case, so considering this
a hard error looks fine to me (CC Richard Zidlicky).
> To sum it up, a solution would be welcome. The patch you currently have
> in the m68k repo isn't a solution.
OK, reverted. Thanks!
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@...ux-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
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists