svn commit: r337047 - vendor-sys/illumos/dist/uts/common/fs/zfs/sys vendor/illumos/dist/cmd/zfs vendor/illumos/dist/lib/libzfs/common
Alexander Motin
mav at FreeBSD.org
Wed Aug 1 18:28:18 UTC 2018
Author: mav
Date: Wed Aug 1 18:28:17 2018
New Revision: 337047
URL: https://svnweb.freebsd.org/changeset/base/337047
Log:
8115 parallel zfs mount
Mounting of filesystems in "filesystem/local" is done using `zfs mount -a`,
which mounts each filesystems serially. The bottleneck for each mount is
the I/O done to load metadata for each filesystem. As such, mounting
filesystems using a parallel algorithm should be a big win, and bring down
the runtime of "filesystem/local"'s start method.
illumos/illumos-gate at 591e0e133f9980083db5d64ac33a30bcc3382ff7
Reviewed by: Matthew Ahrens <mahrens at delphix.com>
Reviewed by: Pavel Zakharov <pavel.zakharov at delphix.com>
Reviewed by: Brad Lewis <brad.lewis at delphix.com>
Reviewed by: George Wilson <george.wilson at delphix.com>
Reviewed by: Paul Dagnelie <pcd at delphix.com>
Reviewed by: Prashanth Sreenivasa <pks at delphix.com>
Approved by: Matt Ahrens <mahrens at delphix.com>
Author: Sebastien Roy <seb at delphix.com>
Modified:
vendor-sys/illumos/dist/uts/common/fs/zfs/sys/dsl_pool.h
Changes in other areas also in this revision:
Added:
vendor/illumos/dist/lib/libzfs/common/libzfs_taskq.c (contents, props changed)
vendor/illumos/dist/lib/libzfs/common/libzfs_taskq.h (contents, props changed)
Modified:
vendor/illumos/dist/cmd/zfs/zfs_main.c
vendor/illumos/dist/lib/libzfs/common/libzfs.h
vendor/illumos/dist/lib/libzfs/common/libzfs_dataset.c
vendor/illumos/dist/lib/libzfs/common/libzfs_impl.h
vendor/illumos/dist/lib/libzfs/common/libzfs_mount.c
Modified: vendor-sys/illumos/dist/uts/common/fs/zfs/sys/dsl_pool.h
==============================================================================
--- vendor-sys/illumos/dist/uts/common/fs/zfs/sys/dsl_pool.h Wed Aug 1 17:40:17 2018 (r337046)
+++ vendor-sys/illumos/dist/uts/common/fs/zfs/sys/dsl_pool.h Wed Aug 1 18:28:17 2018 (r337047)
@@ -89,7 +89,7 @@ typedef struct dsl_pool {
struct dsl_dir *dp_leak_dir;
struct dsl_dataset *dp_origin_snap;
uint64_t dp_root_dir_obj;
- struct taskq *dp_vnrele_taskq;
+ taskq_t *dp_vnrele_taskq;
/* No lock needed - sync context only */
blkptr_t dp_meta_rootbp;
More information about the svn-src-vendor
mailing list