zfs/lib
Alan Somers 2d8f72d76c
zpool: speed up importing large pools (#11469)
The ZFS_IOC_POOL_TRYIMPORT ioctl returns an nvlist from the kernel to a
preallocated buffer in  userland.  Userland must guess how large the
buffer should be.  If it undersizes it, it must reallocate and try
again.  That can cost a lot of time for large pools.

OpenZFS commit 28b40c8a6e set the guess at "zc.zc_nvlist_conf_size * 4"
without explanation.  On my system, that is too small.  From experiment,
x 32 is a better multiplier.  But I don't know how to calculate it
theoretically.

Sponsored by:	Axcient
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Reviewed-by: Alek Pinchuk <apinchuk@axcient.com>
Signed-off-by:	Alan Somers <asomers@gmail.com>
Closes #11469
2021-01-21 12:55:54 -08:00
..
libavl Fixes for make dist 2020-06-26 14:20:02 -07:00
libefi pool may become suspended during device expansion 2020-09-17 20:03:10 -07:00
libicp Clean up lib dependencies 2020-07-10 14:26:00 -07:00
libnvpair Include the ABI with dist tarball 2020-11-21 10:44:52 -08:00
libshare zpool command complains about /etc/exports.d 2020-09-25 13:09:40 -07:00
libspl Extending FreeBSD UIO Struct 2021-01-20 21:27:30 -08:00
libtpool Clean up lib dependencies 2020-07-10 14:26:00 -07:00
libunicode Fixes for make dist 2020-06-26 14:20:02 -07:00
libuutil Include the ABI with dist tarball 2020-11-21 10:44:52 -08:00
libzfs zpool: speed up importing large pools (#11469) 2021-01-21 12:55:54 -08:00
libzfs_core Include the ABI with dist tarball 2020-11-21 10:44:52 -08:00
libzfsbootenv libzfsbootenv: do not depend on libnvpair 2020-11-22 15:16:42 -08:00
libzpool Linux 5.10 compat: use iov_iter in uio structure 2020-12-18 08:48:26 -08:00
libzstd Avoid symbol collision with in-kernel zstdlib 2020-08-24 12:20:41 -07:00
libzutil libzutil: optimize zpool_read_label with AIO 2021-01-21 11:24:35 -08:00
Makefile.am Library ABI tracking with abigail 2020-11-17 09:18:52 -08:00