summaryrefslogtreecommitdiffstats
path: root/cddl/lib
diff options
context:
space:
mode:
authormav <mav@FreeBSD.org>2014-05-24 10:44:40 +0000
committermav <mav@FreeBSD.org>2014-05-24 10:44:40 +0000
commit058b9b78b931da18d1fe1cf224e46f54de2890d9 (patch)
treec92ed7ac61f9be9d558670b53fac292267283eb2 /cddl/lib
parent54ed85cbfeb8d9196eb0848fcafafa205d4a1492 (diff)
downloadFreeBSD-src-058b9b78b931da18d1fe1cf224e46f54de2890d9.zip
FreeBSD-src-058b9b78b931da18d1fe1cf224e46f54de2890d9.tar.gz
MFC r265689:
Import adapted OpenSolaris' thread pool API implementation. The thread pool is used by libzfs to implement parallel disk scanning. Without this change our dummy wrapper made `zpool import ZZZ` command to scan all disks sequentially from the single thread when searching for pools. This change makes it use two threads per CPU, same as in OpenSolaris. On system with 200 HDDs this change reduces ZFS pool import time from 35 to 22 seconds.
Diffstat (limited to 'cddl/lib')
-rw-r--r--cddl/lib/libzfs/Makefile1
1 files changed, 1 insertions, 0 deletions
diff --git a/cddl/lib/libzfs/Makefile b/cddl/lib/libzfs/Makefile
index 5b6b47d..16660ac 100644
--- a/cddl/lib/libzfs/Makefile
+++ b/cddl/lib/libzfs/Makefile
@@ -14,6 +14,7 @@ SRCS= deviceid.c \
fsshare.c \
mkdirp.c \
mnttab.c \
+ thread_pool.c \
zmount.c \
zone.c
OpenPOWER on IntegriCloud