mirror_zfs/module
Alexander Motin 2ea370a4e3 BRT: Fix holes cloning.
- When reading L0 block pointers handle buffers without ones and
without dirty records as a holes.  Those appear when dnode size
was increased, but the end was never written, so there are no new
indirection levels to store the pointers.  It makes no sense to
return EAGAIN here, since sync won't create new indirection levels
until there will be actual writes.
 - When cloning blocks set destination hole logical birth time
to the current TXG.  Otherwise if we are cloning over existing
data, newly created holes may not be properly replicated later.
Use BP_SET_BIRTH() when possible to not replicate its logic.

Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: Alexander Motin <mav@FreeBSD.org>
Sponsored by: iXsystems, Inc.
Closes #15994
Closes #16007
2024-04-19 10:13:38 -07:00
..
avl
icp Add BTI landing pads to the AArch64 SHA2 assembly 2023-10-04 12:36:21 -07:00
lua LUA: Backport CVE-2020-24370's patch 2024-02-08 15:22:16 -08:00
nvpair
os Linux: Cleanup taskq threads spawn/exit 2024-04-19 10:13:38 -07:00
unicode
zcommon set autotrim default to 'off' everywhere 2023-07-21 16:35:12 -07:00
zfs BRT: Fix holes cloning. 2024-04-19 10:13:38 -07:00
zstd
.gitignore
Kbuild.in linux 6.7 compat: rework shrinker setup for heap allocations 2023-12-21 11:03:08 -08:00
Makefile.bsd Finally drop long disabled vdev cache. 2023-06-09 12:40:55 -07:00
Makefile.in check-zstd-symbols: also ignore __pfx_ symbols 2023-09-19 08:52:06 -07:00