WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

[Xen-devel] [PATCH 20/49] x86: irq: Remove IRQF_DISABLED

To: linux-kernel@xxxxxxxxxxxxxxx
Subject: [Xen-devel] [PATCH 20/49] x86: irq: Remove IRQF_DISABLED
From: Yong Zhang <yong.zhang0@xxxxxxxxx>
Date: Sat, 22 Oct 2011 17:56:32 +0800
Cc: "Venkatesh Pallipadi \(Venki\)" <venki@xxxxxxxxxx>, Jeremy Fitzhardinge <jeremy.fitzhardinge@xxxxxxxxxx>, Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx>, x86@xxxxxxxxxx, virtualization@xxxxxxxxxxxxxxxxxxxxxxxxxx, Ingo Molnar <mingo@xxxxxxxxxx>, "H. Peter Anvin" <hpa@xxxxxxxxx>, tglx@xxxxxxxxxxxxx, xen-devel@xxxxxxxxxxxxxxxxxxx
Delivery-date: Sat, 22 Oct 2011 03:08:18 -0700
Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=from:to:cc:subject:date:message-id:x-mailer:in-reply-to:references; bh=QfizmX1EyKT3XY2YjyZp9Z0VYCV/pUMr7yJS8gKjz2Q=; b=t6RS1AUYMg2cRr6wdhxFSXZmufNoV+fDOAGnRsfLJR/BjzuDBtEqP9NQ/wJ0XtJWQB HfszTLxBORvhcPrcJF4fVxCMGwr5iLW0SXETke5EffZndIm2SELc1V6Aklc8edhIrghx fuSFl9WxqVAn2bByCpjEPlTMk+pVBYIkR+Olo=
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <1319277421-9203-1-git-send-email-yong.zhang0@xxxxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
References: <1319277421-9203-1-git-send-email-yong.zhang0@xxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Since commit [e58aa3d2: genirq: Run irq handlers with interrupts disabled],
We run all interrupt handlers with interrupts disabled
and we even check and yell when an interrupt handler
returns with interrupts enabled (see commit [b738a50a:
genirq: Warn when handler enables interrupts]).

So now this flag is a NOOP and can be removed.

Signed-off-by: Yong Zhang <yong.zhang0@xxxxxxxxx>
---
 arch/x86/include/asm/floppy.h |    4 ++--
 arch/x86/kernel/hpet.c        |    2 +-
 arch/x86/kernel/time.c        |    2 +-
 arch/x86/xen/smp.c            |    8 ++++----
 arch/x86/xen/spinlock.c       |    2 +-
 arch/x86/xen/time.c           |    5 ++---
 6 files changed, 11 insertions(+), 12 deletions(-)

diff --git a/arch/x86/include/asm/floppy.h b/arch/x86/include/asm/floppy.h
index dbe82a5..22bf4d6 100644
--- a/arch/x86/include/asm/floppy.h
+++ b/arch/x86/include/asm/floppy.h
@@ -145,10 +145,10 @@ static int fd_request_irq(void)
 {
        if (can_use_virtual_dma)
                return request_irq(FLOPPY_IRQ, floppy_hardint,
-                                  IRQF_DISABLED, "floppy", NULL);
+                                  0, "floppy", NULL);
        else
                return request_irq(FLOPPY_IRQ, floppy_interrupt,
-                                  IRQF_DISABLED, "floppy", NULL);
+                                  0, "floppy", NULL);
 }
 
 static unsigned long dma_mem_alloc(unsigned long size)
diff --git a/arch/x86/kernel/hpet.c b/arch/x86/kernel/hpet.c
index b946a9e..5c21a30 100644
--- a/arch/x86/kernel/hpet.c
+++ b/arch/x86/kernel/hpet.c
@@ -516,7 +516,7 @@ static int hpet_setup_irq(struct hpet_dev *dev)
 {
 
        if (request_irq(dev->irq, hpet_interrupt_handler,
-                       IRQF_TIMER | IRQF_DISABLED | IRQF_NOBALANCING,
+                       IRQF_TIMER | IRQF_NOBALANCING,
                        dev->name, dev))
                return -1;
 
diff --git a/arch/x86/kernel/time.c b/arch/x86/kernel/time.c
index dd5fbf4..3375e42 100644
--- a/arch/x86/kernel/time.c
+++ b/arch/x86/kernel/time.c
@@ -71,7 +71,7 @@ static irqreturn_t timer_interrupt(int irq, void *dev_id)
 
 static struct irqaction irq0  = {
        .handler = timer_interrupt,
-       .flags = IRQF_DISABLED | IRQF_NOBALANCING | IRQF_IRQPOLL | IRQF_TIMER,
+       .flags = IRQF_NOBALANCING | IRQF_IRQPOLL | IRQF_TIMER,
        .name = "timer"
 };
 
diff --git a/arch/x86/xen/smp.c b/arch/x86/xen/smp.c
index 041d4fe..a375a75 100644
--- a/arch/x86/xen/smp.c
+++ b/arch/x86/xen/smp.c
@@ -100,7 +100,7 @@ static int xen_smp_intr_init(unsigned int cpu)
        rc = bind_ipi_to_irqhandler(XEN_RESCHEDULE_VECTOR,
                                    cpu,
                                    xen_reschedule_interrupt,
-                                   IRQF_DISABLED|IRQF_PERCPU|IRQF_NOBALANCING,
+                                   IRQF_PERCPU|IRQF_NOBALANCING,
                                    resched_name,
                                    NULL);
        if (rc < 0)
@@ -111,7 +111,7 @@ static int xen_smp_intr_init(unsigned int cpu)
        rc = bind_ipi_to_irqhandler(XEN_CALL_FUNCTION_VECTOR,
                                    cpu,
                                    xen_call_function_interrupt,
-                                   IRQF_DISABLED|IRQF_PERCPU|IRQF_NOBALANCING,
+                                   IRQF_PERCPU|IRQF_NOBALANCING,
                                    callfunc_name,
                                    NULL);
        if (rc < 0)
@@ -120,7 +120,7 @@ static int xen_smp_intr_init(unsigned int cpu)
 
        debug_name = kasprintf(GFP_KERNEL, "debug%d", cpu);
        rc = bind_virq_to_irqhandler(VIRQ_DEBUG, cpu, xen_debug_interrupt,
-                                    IRQF_DISABLED | IRQF_PERCPU | 
IRQF_NOBALANCING,
+                                    IRQF_PERCPU | IRQF_NOBALANCING,
                                     debug_name, NULL);
        if (rc < 0)
                goto fail;
@@ -130,7 +130,7 @@ static int xen_smp_intr_init(unsigned int cpu)
        rc = bind_ipi_to_irqhandler(XEN_CALL_FUNCTION_SINGLE_VECTOR,
                                    cpu,
                                    xen_call_function_single_interrupt,
-                                   IRQF_DISABLED|IRQF_PERCPU|IRQF_NOBALANCING,
+                                   IRQF_PERCPU|IRQF_NOBALANCING,
                                    callfunc_name,
                                    NULL);
        if (rc < 0)
diff --git a/arch/x86/xen/spinlock.c b/arch/x86/xen/spinlock.c
index cc9b1e1..27882f5 100644
--- a/arch/x86/xen/spinlock.c
+++ b/arch/x86/xen/spinlock.c
@@ -354,7 +354,7 @@ void __cpuinit xen_init_lock_cpu(int cpu)
        irq = bind_ipi_to_irqhandler(XEN_SPIN_UNLOCK_VECTOR,
                                     cpu,
                                     dummy_handler,
-                                    IRQF_DISABLED|IRQF_PERCPU|IRQF_NOBALANCING,
+                                    IRQF_PERCPU|IRQF_NOBALANCING,
                                     name,
                                     NULL);
 
diff --git a/arch/x86/xen/time.c b/arch/x86/xen/time.c
index 0296a95..9157113 100644
--- a/arch/x86/xen/time.c
+++ b/arch/x86/xen/time.c
@@ -408,9 +408,8 @@ void xen_setup_timer(int cpu)
                name = "<timer kasprintf failed>";
 
        irq = bind_virq_to_irqhandler(VIRQ_TIMER, cpu, xen_timer_interrupt,
-                                     IRQF_DISABLED|IRQF_PERCPU|
-                                     IRQF_NOBALANCING|IRQF_TIMER|
-                                     IRQF_FORCE_RESUME,
+                                     IRQF_PERCPU|IRQF_NOBALANCING|
+                                     IRQF_TIMER|IRQF_FORCE_RESUME,
                                      name, NULL);
 
        evt = &per_cpu(xen_clock_events, cpu);
-- 
1.7.1


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel

<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-devel] [PATCH 20/49] x86: irq: Remove IRQF_DISABLED, Yong Zhang <=