An intermediate release of the OpenZFS project 2.2.1 is available, which develops the implementation of the ZFS file system for Linux and FreeBSD. This release is notable for adding support for Linux kernel 6.6 and attempting to fix a problem that leads to data corruption (zeroing out parts of blocks) in files after they have been copied.
Initially, it was thought that the problem only occurred in version 2.2.x and was caused by an error in the block cloning mechanism included in OpenZFS 2.2.0, which allows creating a copy of a file or its part without duplicating data, using references to already existing data blocks from the original file without actually copying them. In OpenZFS 2.2.1, to block the issue, the block cloning mechanism has been disabled by default, and a setting to enable zfs_bclone_enabled has been added for those wishing to revert to this mode.
Later, developers reported reproducing the issue in configurations with the OpenZFS 2.1.x branch. Speculations that the problem occurs on systems with old releases of the coreutils package were not confirmed; the error was reproduced in FreeBSD and Linux distributions with the fresh coreutils 9.4 release.
File corruption manifests under quite rare circumstances; for example, executing the command "emerge -1 dev-lang/go" in Gentoo leads to the installation of tools for the Go language with file corruption in the directory /usr/lib/go/pkg/tool/linux_amd64/compile. It is believed that the error began to manifest after the default setting of "zfs_dmu_offset_next_sync=1" was introduced in version openzfs 2.1.4. The source of the error has not yet been identified. As a recommended workaround to block the error, it is suggested to set the parameter " /sys/module/zfs/parameters/zfs_dmu_offset_next_sync" to 0.
Source: opennet.ru
