diff options
author | John Baldwin <jhb@FreeBSD.org> | 2000-10-25 05:19:40 +0000 |
---|---|---|
committer | John Baldwin <jhb@FreeBSD.org> | 2000-10-25 05:19:40 +0000 |
commit | 8088699f795d34421f429d5539e8e68cbaf3115c (patch) | |
tree | 9894f99096605a24f42fc4e18482dead42b189a5 /sys/kern/subr_taskqueue.c | |
parent | 650789cb1b390b2ef141e62d03f950d8bec38bd5 (diff) |
Notes
Diffstat (limited to 'sys/kern/subr_taskqueue.c')
-rw-r--r-- | sys/kern/subr_taskqueue.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/sys/kern/subr_taskqueue.c b/sys/kern/subr_taskqueue.c index 3fa0f05fb50cd..ba25c7f5f6eeb 100644 --- a/sys/kern/subr_taskqueue.c +++ b/sys/kern/subr_taskqueue.c @@ -40,6 +40,8 @@ MALLOC_DEFINE(M_TASKQUEUE, "taskqueue", "Task Queues"); static STAILQ_HEAD(taskqueue_list, taskqueue) taskqueue_queues; +static struct intrhand *taskqueue_ih; + struct taskqueue { STAILQ_ENTRY(taskqueue) tq_link; STAILQ_HEAD(, task) tq_queue; @@ -191,14 +193,15 @@ taskqueue_run(struct taskqueue *queue) static void taskqueue_swi_enqueue(void *context) { - setsofttq(); + sched_swi(taskqueue_ih, SWI_NOSWITCH); } static void -taskqueue_swi_run(void) +taskqueue_swi_run(void *dummy) { taskqueue_run(taskqueue_swi); } TASKQUEUE_DEFINE(swi, taskqueue_swi_enqueue, 0, - register_swi(SWI_TQ, taskqueue_swi_run)); + taskqueue_ih = sinthand_add("task queue", NULL, + taskqueue_swi_run, NULL, SWI_TQ, 0)); |