mirror_zfs/tests/zfs-tests
Fedor Uporov 1a8f5ad3b0
zvol: Enable zvol threading functionality on FreeBSD
Make zvol I/O requests processing asynchronous on FreeBSD side in some
cases. Clone zvol threading logic and required module parameters from
Linux side. Make zvol threadpool creation/destruction logic shared for
both Linux and FreeBSD.
The IO requests are processed asynchronously in next cases:
- volmode=geom: if IO request thread is geom thread or cannot sleep.
- volmode=cdev: if IO request passed thru struct cdevsw .d_strategy
routine, mean is AIO request.
In all other cases the IO requests are processed synchronously. The
volthreading zvol property is ignored on FreeBSD side.

Sponsored-by: vStack, Inc.
Reviewed-by: Alexander Motin <mav@FreeBSD.org>
Reviewed-by: Tony Hutter <hutter2@llnl.gov>
Reviewed-by: @ImAwsumm
Signed-off-by: Fedor Uporov <fuporov.vstack@gmail.com>
Closes #17169
2025-05-08 15:25:40 -04:00
..
callbacks SPDX: license tags: CDDL-1.0 2025-03-13 17:56:27 -07:00
cmd tests: fix S_IFMT undeclared at statx.c 2025-05-02 17:49:25 -04:00
include zvol: Enable zvol threading functionality on FreeBSD 2025-05-08 15:25:40 -04:00
tests zvol: Enable zvol threading functionality on FreeBSD 2025-05-08 15:25:40 -04:00
.gitignore autoconf: use include directives instead of recursing down cmd 2022-05-10 10:18:38 -07:00
Makefile.am ZTS: reimplement kstat helper function 2025-01-21 10:12:07 -08:00