mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2025-01-19 12:24:34 +08:00
genirq: do not execute DEBUG_SHIRQ when irq setup failed
When requesting an IRQ, the DEBUG_SHIRQ code executes a fake IRQ just to make sure the driver is ready to receive an IRQ immediately. The problem was that this fake IRQ was being executed even if interrupt line failed to be allocated by __setup_irq. Signed-off-by: Luis Henriques <henrix@sapo.pt> LKML-Reference: <20090401170635.GA4392@hades.domain.com> Signed-off-by: Thomas Gleixner <tglx@linutronix.de> [ fixed bug pointed out by a warning reported by Stephen Rothwell ] Cc: Stephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: Ingo Molnar <mingo@elte.hu>
This commit is contained in:
parent
833bb3046b
commit
6ce51c4310
@ -768,7 +768,7 @@ int request_irq(unsigned int irq, irq_handler_t handler,
|
||||
kfree(action);
|
||||
|
||||
#ifdef CONFIG_DEBUG_SHIRQ
|
||||
if (irqflags & IRQF_SHARED) {
|
||||
if (!retval && (irqflags & IRQF_SHARED)) {
|
||||
/*
|
||||
* It's a shared IRQ -- the driver ought to be prepared for it
|
||||
* to happen immediately, so let's make sure....
|
||||
|
Loading…
Reference in New Issue
Block a user