diff options
-rw-r--r-- | sys/mips/rmi/on_chip.c | 8 | ||||
-rw-r--r-- | sys/mips/rmi/xlr_machdep.c | 5 |
2 files changed, 8 insertions, 5 deletions
diff --git a/sys/mips/rmi/on_chip.c b/sys/mips/rmi/on_chip.c index c0c73c4..cfab1d1 100644 --- a/sys/mips/rmi/on_chip.c +++ b/sys/mips/rmi/on_chip.c @@ -27,6 +27,8 @@ * SUCH DAMAGE. * * RMI_BSD */ +#include <sys/cdefs.h> +__FBSDID("$FreeBSD$"); #include <sys/types.h> #include <sys/systm.h> #include <sys/param.h> @@ -272,9 +274,9 @@ register_msgring_handler(int major, if (xlr_test_and_set(&msgring_int_enabled)) { platform_prep_smp_launch(); - cpu_establish_hardintr("msgring", (driver_filter_t *) NULL, - (driver_intr_t *) msgring_process_fast_intr, - NULL, IRQ_MSGRING, INTR_TYPE_NET | INTR_FAST, &cookie); + cpu_establish_hardintr("msgring", (driver_filter_t *) msgring_process_fast_intr, + NULL, NULL, IRQ_MSGRING, + INTR_TYPE_NET | INTR_FAST, &cookie); /* configure the msgring interrupt on cpu 0 */ enable_msgring_int(NULL); diff --git a/sys/mips/rmi/xlr_machdep.c b/sys/mips/rmi/xlr_machdep.c index ae95778..1dc1b3c 100644 --- a/sys/mips/rmi/xlr_machdep.c +++ b/sys/mips/rmi/xlr_machdep.c @@ -583,7 +583,7 @@ disable_msgring_int(void *arg); void enable_msgring_int(void *arg); void xlr_msgring_handler(struct trapframe *tf); -void msgring_process_fast_intr(void *arg); +int msgring_process_fast_intr(void *arg); struct msgring_ithread { struct thread *i_thread; @@ -594,7 +594,7 @@ struct msgring_ithread { struct msgring_ithread msgring_ithreads[MAXCPU]; char ithd_name[MAXCPU][32]; -void +int msgring_process_fast_intr(void *arg) { int cpu = PCPU_GET(cpuid); @@ -617,6 +617,7 @@ msgring_process_fast_intr(void *arg) sched_add(td, SRQ_INTR); } thread_unlock(td); + return FILTER_HANDLED; } static void |