X-Git-Url: https://git.camperquake.de/gitweb.cgi?a=blobdiff_plain;f=lib%2Flibzpool%2Ftaskq.c;h=96c0d5c2be989446a4c8d0e17d64672dc6a4b918;hb=a1d9543a39942be56879ca9338078afc77c25cea;hp=6143a9189951fe7a1e38aca5fac8b74fe96ca79c;hpb=a38718a63d79116d6cb614dd2821e2a3955e5c8c;p=zfs.git diff --git a/lib/libzpool/taskq.c b/lib/libzpool/taskq.c index 6143a91..96c0d5c 100644 --- a/lib/libzpool/taskq.c +++ b/lib/libzpool/taskq.c @@ -24,6 +24,7 @@ */ /* * Copyright 2011 Nexenta Systems, Inc. All rights reserved. + * Copyright 2012 Garrett D'Amore . All rights reserved. */ #include @@ -140,14 +141,19 @@ taskq_dispatch(taskq_t *tq, task_func_t func, void *arg, uint_t tqflags) t->tqent_prev->tqent_next = t; t->tqent_func = func; t->tqent_arg = arg; - - ASSERT(!(t->tqent_flags & TQENT_FLAG_PREALLOC)); - + t->tqent_flags = 0; cv_signal(&tq->tq_dispatch_cv); mutex_exit(&tq->tq_lock); return (1); } +taskqid_t +taskq_dispatch_delay(taskq_t *tq, task_func_t func, void *arg, uint_t tqflags, + clock_t expire_time) +{ + return (0); +} + int taskq_empty_ent(taskq_ent_t *t) { @@ -205,6 +211,12 @@ taskq_wait(taskq_t *tq) mutex_exit(&tq->tq_lock); } +void +taskq_wait_id(taskq_t *tq, taskqid_t id) +{ + taskq_wait(tq); +} + static void taskq_thread(void *arg) { @@ -340,6 +352,12 @@ taskq_member(taskq_t *tq, kthread_t *t) return (0); } +int +taskq_cancel_id(taskq_t *tq, taskqid_t id) +{ + return (ENOENT); +} + void system_taskq_init(void) {