mirror_zfs/cmd
Alexander Motin 60f714e6e2 Implement physical rewrites
Based on previous commit this implements `zfs rewrite -P` flag,
making ZFS to keep blocks logical birth times while rewriting
files.  It should exclude the rewritten blocks from incremental
sends, snapshot diffs, etc.  Snapshots space usage same time will
reflect the additional space usage from newly allocated blocks.

Since this begins to use new "rewrite" flag in the block pointers,
this commit introduces a new read-compatible per-dataset feature
physical_rewrite.  It must be enabled for the command to not fail,
it is activated on first use and deactivated on deletion of the
last affected dataset.

Reviewed-by: Rob Norris <robn@despairlabs.com>
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by:  Alexander Motin <alexander.motin@TrueNAS.com>
Closes #17565
2025-08-06 10:36:56 -07:00
..
raidz_test SPDX: license tags: CDDL-1.0 2025-03-13 17:56:27 -07:00
zdb Allow physical rewrite without logical 2025-08-06 10:36:07 -07:00
zed ZED: Fix device type detection and pool iteration logic 2025-07-24 15:47:46 -07:00
zfs Implement physical rewrites 2025-08-06 10:36:56 -07:00
zinject Multiple printf() size fixes (#17199) 2025-04-01 15:27:03 -07:00
zpool Add TXG timestamp database 2025-08-06 10:31:21 -07:00
zpool_influxdb SPDX: license tags: CDDL-1.0 2025-03-13 17:56:27 -07:00
zstream SPDX: license tags: CDDL-1.0 2025-03-13 17:56:27 -07:00
arc_summary add uncompressed_size to arc_summary 2025-07-22 15:06:09 -07:00
arcstat.in arcstat: prevent ZeroDivisionError when L2ARC becomes empty 2025-05-19 16:27:24 -07:00
dbufstat.in SPDX: license tags: CDDL-1.0 2025-03-13 17:56:27 -07:00
fsck.zfs.in cmd: move single-file binaries up, extract udev programs to udev/ 2022-05-10 10:20:34 -07:00
Makefile.am build: rename FORCEDEBUG_CPPFLAGS to LIBZPOOL_CPPFLAGS 2024-08-27 12:53:27 -07:00
mount_zfs.c SPDX: license tags: CDDL-1.0 2025-03-13 17:56:27 -07:00
zfs_ids_to_path.c SPDX: license tags: CDDL-1.0 2025-03-13 17:56:27 -07:00
zgenhostid.c SPDX: license tags: CDDL-1.0 2025-03-13 17:56:27 -07:00
zhack.c SPDX: license tags: CDDL-1.0 2025-03-13 17:56:27 -07:00
zilstat.in SPDX: license tags: CDDL-1.0 2025-03-13 17:56:27 -07:00
ztest.c everywhere: misc unnecessary var init/update 2025-07-22 15:23:58 -07:00
zvol_wait zvol_wait logic may terminate prematurely 2022-10-11 12:12:04 -07:00