Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1757948AbZCaRRZ (ORCPT ); Tue, 31 Mar 2009 13:17:25 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1753124AbZCaRRQ (ORCPT ); Tue, 31 Mar 2009 13:17:16 -0400 Received: from relay6.ptmail.sapo.pt ([212.55.154.26]:59570 "HELO sapo.pt" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with SMTP id S1751905AbZCaRRP (ORCPT ); Tue, 31 Mar 2009 13:17:15 -0400 X-AntiVirus: PTMail-AV 0.3-0.92.0 Date: Tue, 31 Mar 2009 18:14:50 +0100 From: Luis Henriques To: Ingo Molnar Cc: Thomas Gleixner , linux-kernel@vger.kernel.org Subject: [PATCH -tip] irq: DEBUG_SHIRQ executed on irq setup failure Message-ID: <20090331171449.GA4993@hades.domain.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.5.18 (2008-05-17) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1113 Lines: 31 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 --- kernel/irq/manage.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/kernel/irq/manage.c b/kernel/irq/manage.c index a3eb7ba..8e1be16 100644 --- a/kernel/irq/manage.c +++ b/kernel/irq/manage.c @@ -914,7 +914,7 @@ int request_threaded_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.... -- 1.6.2.1 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/