summaryrefslogtreecommitdiff
path: root/linux/dev
diff options
context:
space:
mode:
Diffstat (limited to 'linux/dev')
-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 8966dea..7faaa62 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
{