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.
This commit is contained in:
John Baldwin 2001-09-27 19:03:52 +00:00
parent ccf35be189
commit bf2965ed32
4 changed files with 8 additions and 0 deletions

View File

@ -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();

View File

@ -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();

View File

@ -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();

View File

@ -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();