mirror_zfs/cmd/zed
Alan Somers b64afa41d5 Better control the thread pool size when mounting datasets
Ever since a10d50f999, ZFS has mounted file systems in parallel when
importing a pool.  It uses a fixed size of 512 for the thread pool.  But
since c183d164aa, it has also imported pools in parallel.  So the total
number of threads at one time is 513 * npools + 1.  That can easily
exceed the system's limit on the number of threads per process, which
will cause one or more pools to be unable to allocate any worker
threads, forcing them to fallback to slow serial mounting .  To
forestall that, manage the threadpool size in /sbin/zpool, not libzfs.
Use the same size (512), but divided by the number of pools.

This is a backwards-incompatible change to the libzfs abi.

Sponsored by: Axcient
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Reviewed-by: George Wilson <gwilson@delphix.com>
Signed-off-by: Alan Somers <asomers@FreeBSD.org>
Closes #16178
2024-05-14 09:36:21 -07:00
..
agents Better control the thread pool size when mounting datasets 2024-05-14 09:36:21 -07:00
zed.d Add Gotify notification support to ZED 2024-01-09 09:49:30 -08:00
.gitignore Initial implementation of zed (ZFS Event Daemon) 2014-04-02 13:10:03 -07:00
Makefile.am Replace EXTRA_DIST with dist_noinst_DATA 2022-05-26 09:24:50 -07:00
zed_conf.c Fix usage of zed_log_msg() and zfs_panic_recover() 2022-09-19 17:32:18 -07:00
zed_conf.h Prevent zevent list from consuming all of kernel memory 2022-08-22 12:36:22 -07:00
zed_disk_event.c nvpair: Constify string functions 2023-03-14 15:25:50 -07:00
zed_disk_event.h Bring over illumos ZFS FMA logic -- phase 1 2016-09-01 11:39:45 -07:00
zed_event.c zed: misc vdev_enc_sysfs_path fixes 2023-11-07 09:09:24 -08:00
zed_event.h Replace ZoL with OpenZFS where applicable 2021-05-07 17:20:37 -07:00
zed_exec.c Handle possible null pointers from malloc/strdup/strndup() 2022-10-06 17:18:40 -07:00
zed_exec.h Replace ZoL with OpenZFS where applicable 2021-05-07 17:20:37 -07:00
zed_file.c Replace ZoL with OpenZFS where applicable 2021-05-07 17:20:37 -07:00
zed_file.h Replace ZoL with OpenZFS where applicable 2021-05-07 17:20:37 -07:00
zed_log.c Replace ZoL with OpenZFS where applicable 2021-05-07 17:20:37 -07:00
zed_log.h Reduce false positives from Static Analyzers 2022-09-30 15:30:12 -07:00
zed_strings.c Replace ZoL with OpenZFS where applicable 2021-05-07 17:20:37 -07:00
zed_strings.h Replace ZoL with OpenZFS where applicable 2021-05-07 17:20:37 -07:00
zed.c zed: main: fix unused, remove argsused 2021-12-21 12:05:11 -08:00
zed.h Replace ZoL with OpenZFS where applicable 2021-05-07 17:20:37 -07:00