summaryrefslogtreecommitdiffstats
path: root/sys
diff options
context:
space:
mode:
authorjhb <jhb@FreeBSD.org>2001-09-27 19:03:52 +0000
committerjhb <jhb@FreeBSD.org>2001-09-27 19:03:52 +0000
commit91e5ef6d147b916bd33094a39535b89177bde879 (patch)
tree47ae5442509e7b978475016ff0e402a918280921 /sys
parente990e27894015235a408370dab545b1b284413df (diff)
downloadFreeBSD-src-91e5ef6d147b916bd33094a39535b89177bde879.zip
FreeBSD-src-91e5ef6d147b916bd33094a39535b89177bde879.tar.gz
Disable the check in icu_setup() to see if a handler was already used as
the current interrupt thread routines will guarantee the condition this is checking for at a higher level but inthand_add() and inthand_remove() as they currently exist don't satisfy this condition. (Which does need to be fixed but which will take a bit more work.) This fixes shared interrupts.
Diffstat (limited to 'sys')
-rw-r--r--sys/amd64/isa/intr_machdep.c2
-rw-r--r--sys/amd64/isa/nmi.c2
-rw-r--r--sys/i386/isa/intr_machdep.c2
-rw-r--r--sys/i386/isa/nmi.c2
4 files changed, 8 insertions, 0 deletions
diff --git a/sys/amd64/isa/intr_machdep.c b/sys/amd64/isa/intr_machdep.c
index 26e8348..c17806f 100644
--- a/sys/amd64/isa/intr_machdep.c
+++ b/sys/amd64/isa/intr_machdep.c
@@ -481,8 +481,10 @@ icu_setup(int intr, driver_intr_t *handler, void *arg, int flags)
if ((u_int)intr >= ICU_LEN || intr == ICU_SLAVEID)
#endif /* APIC_IO */
return (EINVAL);
+#if 0
if (intr_handler[intr] != isa_strayintr)
return (EBUSY);
+#endif
ef = read_eflags();
disable_intr();
diff --git a/sys/amd64/isa/nmi.c b/sys/amd64/isa/nmi.c
index 26e8348..c17806f 100644
--- a/sys/amd64/isa/nmi.c
+++ b/sys/amd64/isa/nmi.c
@@ -481,8 +481,10 @@ icu_setup(int intr, driver_intr_t *handler, void *arg, int flags)
if ((u_int)intr >= ICU_LEN || intr == ICU_SLAVEID)
#endif /* APIC_IO */
return (EINVAL);
+#if 0
if (intr_handler[intr] != isa_strayintr)
return (EBUSY);
+#endif
ef = read_eflags();
disable_intr();
diff --git a/sys/i386/isa/intr_machdep.c b/sys/i386/isa/intr_machdep.c
index 26e8348..c17806f 100644
--- a/sys/i386/isa/intr_machdep.c
+++ b/sys/i386/isa/intr_machdep.c
@@ -481,8 +481,10 @@ icu_setup(int intr, driver_intr_t *handler, void *arg, int flags)
if ((u_int)intr >= ICU_LEN || intr == ICU_SLAVEID)
#endif /* APIC_IO */
return (EINVAL);
+#if 0
if (intr_handler[intr] != isa_strayintr)
return (EBUSY);
+#endif
ef = read_eflags();
disable_intr();
diff --git a/sys/i386/isa/nmi.c b/sys/i386/isa/nmi.c
index 26e8348..c17806f 100644
--- a/sys/i386/isa/nmi.c
+++ b/sys/i386/isa/nmi.c
@@ -481,8 +481,10 @@ icu_setup(int intr, driver_intr_t *handler, void *arg, int flags)
if ((u_int)intr >= ICU_LEN || intr == ICU_SLAVEID)
#endif /* APIC_IO */
return (EINVAL);
+#if 0
if (intr_handler[intr] != isa_strayintr)
return (EBUSY);
+#endif
ef = read_eflags();
disable_intr();
OpenPOWER on IntegriCloud