]> err.no Git - linux-2.6/blobdiff - arch/s390/kernel/irq.c
Merge git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-x86
[linux-2.6] / arch / s390 / kernel / irq.c
index e347190d9aea3558e81822713613864a1ec3a02d..c36d8123ca14bd464b2cfb59b2c3c9eb0498ca6d 100644 (file)
@@ -1,9 +1,9 @@
 /*
  *  arch/s390/kernel/irq.c
  *
- *  S390 version
- *    Copyright (C) 2004 IBM Deutschland Entwicklung GmbH, IBM Corporation
+ *    Copyright IBM Corp. 2004,2007
  *    Author(s): Martin Schwidefsky (schwidefsky@de.ibm.com),
+ *              Thomas Spatzier (tspat@de.ibm.com)
  *
  * This file contains interrupt related functions.
  */
@@ -14,6 +14,8 @@
 #include <linux/interrupt.h>
 #include <linux/seq_file.h>
 #include <linux/cpu.h>
+#include <linux/proc_fs.h>
+#include <linux/profile.h>
 
 /*
  * show_interrupts is needed by /proc/interrupts.
@@ -69,10 +71,6 @@ asmlinkage void do_softirq(void)
 
        local_irq_save(flags);
 
-       account_system_vtime(current);
-
-       local_bh_disable();
-
        if (local_softirq_pending()) {
                /* Get current stack pointer. */
                asm volatile("la %0,0(15)" : "=a" (old));
@@ -95,11 +93,13 @@ asmlinkage void do_softirq(void)
                        __do_softirq();
        }
 
-       account_system_vtime(current);
-
-       _local_bh_enable();
-
        local_irq_restore(flags);
 }
 
-EXPORT_SYMBOL(do_softirq);
+void init_irq_proc(void)
+{
+       struct proc_dir_entry *root_irq_dir;
+
+       root_irq_dir = proc_mkdir("irq", NULL);
+       create_prof_cpu_mask(root_irq_dir);
+}