mirror_zfs/include
Alexander Motin fa857113a3 DDT: Move logs searches out of the lock
Postponing entry removal from the DDT log in case of hit till later
single-threaded sync stage allows to make ddl_tree stable during
multi-threaded ZIO processing stage.  It allows to drop the DDT lock
before the search instead of after, reducing the contention a lot.

Actually ddt_log_update_entry() was already handling the case of
entry present in the active log, so we only need to remove it from
flushing log, if the entry happen to be there.

My tests with parallel 4KB block writes show throughput increase
from 480MB/s (122K blocks/s) to 827MB/s (212K blocks/s), even
though still limited by the global DDT lock contention.

Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: Alexander Motin <alexander.motin@TrueNAS.com>
Closes #18044
2026-02-05 13:48:31 -08:00
..
os Fix snapshot automount expiry cancellation deadlock 2025-12-10 10:21:29 -08:00
sys DDT: Move logs searches out of the lock 2026-02-05 13:48:31 -08:00
.gitignore OpenZFS restructuring - move platform specific sources 2019-09-06 11:26:26 -07:00
cityhash.h SPDX: license tags: MIT 2025-03-13 17:56:54 -07:00
libnvpair.h SPDX: license tags: CDDL-1.0 2025-03-13 17:56:27 -07:00
libuutil_common.h SPDX: license tags: CDDL-1.0 2025-03-13 17:56:27 -07:00
libuutil_impl.h SPDX: license tags: CDDL-1.0 2025-03-13 17:56:27 -07:00
libuutil.h SPDX: license tags: CDDL-1.0 2025-03-13 17:56:27 -07:00
libzdb.h libzdb: Initial breakout of libzdb 2024-02-05 10:00:41 -08:00
libzfs_core.h SPDX: license tags: CDDL-1.0 2025-03-13 17:56:27 -07:00
libzfs.h pool_iter_refresh: don't refresh pools twice 2025-10-21 09:50:43 -07:00
libzfsbootenv.h SPDX: license tags: CDDL-1.0 2025-03-13 17:56:27 -07:00
libzutil.h SPDX: license tags: CDDL-1.0 2025-03-13 17:56:27 -07:00
Makefile.am Add TXG timestamp database 2025-08-06 10:31:21 -07:00
thread_pool.h SPDX: license tags: CDDL-1.0 2025-03-13 17:56:27 -07:00
zfeature_common.h Implement physical rewrites 2025-08-06 10:36:56 -07:00
zfs_comutil.h SPDX: license tags: CDDL-1.0 2025-03-13 17:56:27 -07:00
zfs_crrd.h Add TXG timestamp database 2025-08-06 10:31:21 -07:00
zfs_deleg.h ZFS allow send:encrypted 2025-09-12 15:05:02 -07:00
zfs_fletcher.h SPDX: license tags: CDDL-1.0 2025-03-13 17:56:27 -07:00
zfs_namecheck.h SPDX: license tags: CDDL-1.0 2025-03-13 17:56:27 -07:00
zfs_prop.h SPDX: license tags: CDDL-1.0 2025-03-13 17:56:27 -07:00
zfs_valstr.h events: include zio type in IO error reports 2025-05-30 10:29:29 -04:00