mirror_zfs/include/sys
Alexander Motin 0c9cdd1606 Improve block cloning transactions accounting
Previous dmu_tx_count_clone() was broken, stating that cloning is
similar to free.  While they might be from some points, cloning
is not net-free.  It will likely consume space and memory, and
unlike free it will do it no matter whether the destination has
the blocks or not (usually not, so previous code did nothing).

Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by:	Alexander Motin <mav@FreeBSD.org>
Sponsored by:	iXsystems, Inc.
Closes #17431
2025-06-17 10:50:26 -07:00
..
crypto SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
fm SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
fs SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
lua SPDX: license tags: MIT 2025-04-16 09:59:44 -07:00
sysevent SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
zstd SPDX: license tags: BSD-3-Clause 2025-04-16 09:59:44 -07:00
abd_impl.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
abd.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
aggsum.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
arc_impl.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
arc.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
asm_linkage.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
avl_impl.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
avl.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
bitmap.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
bitops.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
blake3.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
blkptr.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
bplist.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
bpobj.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
bptree.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
bqueue.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
brt_impl.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
brt.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
btree.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
dataset_kstats.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
dbuf.h ARC: Notify dbuf cache about target size reduction 2025-05-28 16:00:28 -07:00
ddt_impl.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
ddt.h Fix FDT rollback to not overwrite unnecessary fields (#17205) 2025-04-16 09:59:45 -07:00
dmu_impl.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
dmu_objset.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
dmu_recv.h cred: properly pass and test creds on other threads (#17273) 2025-05-28 16:00:28 -07:00
dmu_redact.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
dmu_send.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
dmu_traverse.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
dmu_tx.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
dmu_zfetch.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
dmu.h Improve block cloning transactions accounting 2025-06-17 10:50:26 -07:00
dnode.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
dsl_bookmark.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
dsl_crypt.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
dsl_dataset.h cred: properly pass and test creds on other threads (#17273) 2025-05-28 16:00:28 -07:00
dsl_deadlist.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
dsl_deleg.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
dsl_destroy.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
dsl_dir.h cred: properly pass and test creds on other threads (#17273) 2025-05-28 16:00:28 -07:00
dsl_pool.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
dsl_prop.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
dsl_scan.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
dsl_synctask.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
dsl_userhold.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
edonr.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
efi_partition.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
frame.h Linux build: silence objtool warnings 2025-06-17 10:50:26 -07:00
hkdf.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
metaslab_impl.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
metaslab.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
mmp.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
mntent.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
mod.h SPDX: license tags: GPL-2.0-or-later 2025-04-16 09:59:44 -07:00
multilist.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
nvpair_impl.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
nvpair.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
objlist.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
pathname.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
qat.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
range_tree.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
rrwlock.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
sa_impl.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
sa.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
sha2.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
skein.h SPDX: license tags: LicenseRef-OpenZFS-ThirdParty-PublicDomain 2025-04-16 09:59:45 -07:00
spa_checkpoint.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
spa_checksum.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
spa_impl.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
spa_log_spacemap.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
spa.h zed: Ensure spare activation after kernel-initiated device removal 2025-04-16 09:59:45 -07:00
space_map.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
space_reftree.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
sysevent.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
txg_impl.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
txg.h txg: generalise txg_wait_synced_sig() to txg_wait_synced_flags() (#17284) 2025-05-28 16:00:28 -07:00
u8_textprep_data.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
u8_textprep.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
uberblock_impl.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
uberblock.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
uio_impl.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
unique.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
uuid.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
vdev_disk.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
vdev_draid.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
vdev_file.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
vdev_impl.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
vdev_indirect_births.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
vdev_indirect_mapping.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
vdev_initialize.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
vdev_raidz_impl.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
vdev_raidz.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
vdev_rebuild.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
vdev_removal.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
vdev_trim.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
vdev.h Fix dspace underflow bug 2025-04-16 09:59:45 -07:00
xvattr.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
zap_impl.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
zap_leaf.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
zap.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
zcp_global.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
zcp_iter.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
zcp_prop.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
zcp_set.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
zcp.h cred: properly pass and test creds on other threads (#17273) 2025-05-28 16:00:28 -07:00
zfeature.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
zfs_acl.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
zfs_bootenv.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
zfs_chksum.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
zfs_context.h cred: properly pass and test creds on other threads (#17273) 2025-05-28 16:00:28 -07:00
zfs_debug.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
zfs_delay.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
zfs_file.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
zfs_fuid.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
zfs_impl.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
zfs_ioctl_impl.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
zfs_ioctl.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
zfs_onexit.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
zfs_project.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
zfs_quota.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
zfs_racct.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
zfs_ratelimit.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
zfs_refcount.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
zfs_rlock.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
zfs_sa.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
zfs_stat.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
zfs_sysfs.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
zfs_vfsops.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
zfs_vnops.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
zfs_znode.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
zil_impl.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
zil.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
zio_checksum.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
zio_compress.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
zio_crypt.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
zio_impl.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
zio.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
zrlock.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
zthr.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
zvol_impl.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00
zvol.h SPDX: license tags: CDDL-1.0 2025-04-16 09:59:44 -07:00