Messages in this thread | | | From | Linus Torvalds <> | Date | Mon, 10 Jul 2017 10:01:22 -0700 | Subject | Re: [GIT pull] irq updates for 4.13 |
| |
On Mon, Jul 10, 2017 at 6:35 AM, Sebastian Reichel <sebastian.reichel@collabora.co.uk> wrote: > > This patch apparently breaks OMAP platform: > > 46e48e257360f0845fe17089713cbad4db611e70 is the first bad commit > commit 46e48e257360f0845fe17089713cbad4db611e70 > Author: Thomas Gleixner <tglx@linutronix.de> > Date: Thu Jun 29 23:33:38 2017 +0200 > > genirq: Move irq resource handling out of spinlocked region > > Boot failure log from Droid 4: > [ ... snip snip ..] > > Droid 4 boots current master again after applying the patch below > (which is git revet of above patch, but I provide the patch, since > it did not revet cleanly).
Hmm. Do you actually need the full revert?
I think it's only the __setup_irq() part that looks like it may be garbage.
For example, I think it releases the resources twice if the __irq_set_trigger() call fails.
But it looks questionably in other ways too - notably, the change to make the request call be in the same context as the freeing is done is apparently done entirely for symmetry reasons, not for any actual *reason* reasons.
So I suspect just the __setup_irq() parts should be reverted, because they look both buggy and pointless. But the actual *real* part of the patch was the two-liner __free_irq() part, and that looks sane to me.
So Sebastian, can you test if it's ok to revert just the __setup_irq() part, but leave the smaller part in __free_irq() that just moves the irq_release_resources() around at freeing time?
Thomas? Comments?
Linus
| |