From mboxrd@z Thu Jan 1 00:00:00 1970 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 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