]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
734 taskq_dispatch_prealloc() desired
authoravg <avg@FreeBSD.org>
Tue, 26 Nov 2013 09:26:18 +0000 (09:26 +0000)
committeravg <avg@FreeBSD.org>
Tue, 26 Nov 2013 09:26:18 +0000 (09:26 +0000)
commitd1f2a864011f62139cc89c64017b43cac5af042c
treecfaf879d5c6d1d87164ee0bb41cb89adca2f984d
parente2655a091c1d18ba7f7bc7d299c244099b4c8841
734 taskq_dispatch_prealloc() desired

943 zio_interrupt ends up calling taskq_dispatch with TQ_SLEEP
illumos/illumos-gate@5aeb94743e3be0c51e86f73096334611ae3a058e

Essentially FreeBSD taskqueues already operate in a mode that
was added to Illumos with taskq_dispatch_ent change.
We even exposed the superior FreeBSD interface as taskq_dispatch_safe.
Now we just rename taskq_dispatch_safe to taskq_dispatch_ent and
struct struct ostask to taskq_ent_t, so that code differences will be
minimal.

After this change sys/cddl/compat/opensolaris/sys/taskq.h header is no
longer needed.

Note that this commit is not an MFV because the upstream change was not
individually committed to the vendor area.

MFC after: 8 days
cddl/contrib/opensolaris/lib/libzpool/common/sys/zfs_context.h
cddl/contrib/opensolaris/lib/libzpool/common/taskq.c
sys/cddl/compat/opensolaris/kern/opensolaris_taskq.c
sys/cddl/compat/opensolaris/sys/taskq.h [deleted file]
sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa.c
sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zio.h
sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zio.c
sys/cddl/contrib/opensolaris/uts/common/sys/taskq.h