Initialize the taskq entry embedded within struct vdev

As part of the stack reduction effort in
50b25b2187, a zio_t containing a taskq_ent
was added to struct vdev_queue which itself is part of struct vdev.
The taskq entry should be initialized as is currently done in zio_create()
for newly-created bare zio_t object.  The rationale is the same as is
described in f467b05a26.

Signed-off-by: Tim Chase <tim@chase2k.com>
Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
Closes #3709
This commit is contained in:
Tim Chase 2015-08-27 14:50:39 -05:00 committed by Brian Behlendorf
parent bba365cfc8
commit 36b454ab4c
1 changed files with 1 additions and 0 deletions

View File

@ -348,6 +348,7 @@ vdev_queue_init(vdev_t *vd)
mutex_init(&vq->vq_lock, NULL, MUTEX_DEFAULT, NULL);
vq->vq_vdev = vd;
taskq_init_ent(&vd->vdev_queue.vq_io_search.io_tqent);
avl_create(&vq->vq_active_tree, vdev_queue_offset_compare,
sizeof (zio_t), offsetof(struct zio, io_queue_node));