summaryrefslogtreecommitdiff
path: root/linux/dev/arch/i386/kernel/irq.c
diff options
context:
space:
mode:
authorSamuel Thibault <samuel.thibault@ens-lyon.org>2011-08-11 13:47:29 +0200
committerSamuel Thibault <samuel.thibault@ens-lyon.org>2011-08-11 13:47:29 +0200
commitbfdb3be16e5a20eebc97b3ca613d9a4da4465533 (patch)
treec353e3ad19017c8f5cdb330d6363ca2845cb11c4 /linux/dev/arch/i386/kernel/irq.c
parentec91b8ae6735a3f2977dc886ea63ff28e1aeef41 (diff)
parente1f856119dae48fcc1b649521ca45e4bdaa80ea9 (diff)
Merge branch 'master' into master-gdb_stubs
Conflicts: i386/i386at/com.c
Diffstat (limited to 'linux/dev/arch/i386/kernel/irq.c')
-rw-r--r--linux/dev/arch/i386/kernel/irq.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/linux/dev/arch/i386/kernel/irq.c b/linux/dev/arch/i386/kernel/irq.c
index 8966dea1..7faaa62c 100644
--- a/linux/dev/arch/i386/kernel/irq.c
+++ b/linux/dev/arch/i386/kernel/irq.c
@@ -229,6 +229,10 @@ setup_x86_irq (int irq, struct linux_action *new)
if ((old->flags ^ new->flags) & SA_INTERRUPT)
return (-LINUX_EBUSY);
+ /* Can't share at different levels */
+ if (intpri[irq] && linux_intr_pri != intpri[irq])
+ return (-LINUX_EBUSY);
+
/* add new interrupt at end of irq queue */
do
{