From: Garrett D'Amore Date: Fri, 11 Jan 2013 17:04:23 +0000 (-0800) Subject: Illumos #1557 assertion failed in userland taskq_destroy() X-Git-Url: https://git.camperquake.de/gitweb.cgi?a=commitdiff_plain;h=844793c3cc6ebf8e850057e41497089131569be0;p=zfs.git Illumos #1557 assertion failed in userland taskq_destroy() 1557 assertion failed in userland taskq_destroy() Reviewed by: Richard Lowe Reviewed by: George Wilson Approved by: Eric Schrock References: illumos/illumos-gate@aa846ad9bc4785806bb6263657698d5890afbc08 illumos changeset: 13597:3eac1e8e0f4c https://www.illumos.org/issues/1557 Ported-by: Brian Behlendorf --- diff --git a/lib/libzpool/taskq.c b/lib/libzpool/taskq.c index 6143a91..803f7dc 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,9 +141,7 @@ 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);