Dostępna jest wersja pośrednia projektu OpenZFS 2.2.1, rozwijającego implementację systemu plików ZFS dla Linux i FreeBSD. Wydanie to wyróżnia się dodaniem wsparcia dla jądra Linux 6.6 oraz próbą naprawy problemu prowadzącego do uszkodzenia danych (zerowania części bloków) w plikach po ich skopiowaniu.
Początkowo zakładano, że problem występuje tylko w gałęzi 2.2.x i jest spowodowany błędem w włączonym mechanizmie klonowania bloków w OpenZFS 2.2.0, który pozwala na utworzenie kopii pliku lub jego części bez duplikowania danych, wykorzystując w drugiej kopii odnośniki do już istniejących bloków danych pliku źródłowego bez ich faktycznego kopiowania. W wersji OpenZFS 2.2.1, aby zablokować problem, mechanizm klonowania bloków został domyślnie wyłączony, a dla przywrócenia wsparcia tego trybu dodano opcję zfs_bclone_enabled.
Później deweloperzy ogłosili, że udało się odtworzyć problem także w konfiguracjach z gałęzią OpenZFS 2.1.x. Nie potwierdziły się również przypuszczenia, że problem występuje na systemach z wersjami pakietu coreutils sprzed dłuższego czasu – błąd udało się powtórzyć na FreeBSD i w dystrybucjach Linuxa z nową wersją coreutils 9.4.
Uszkodzenie plików występuje w dość rzadkich okolicznościach, na przykład, wykonanie w Gentoo polecenia „emerge -1 dev-lang/go” prowadzi do zainstalowania narzędzi dla języka Go z uszkodzeniem plików w katalogu /usr/lib/go/pkg/tool/linux_amd64/compile. Zakłada się, że błąd zaczął występować po ustawieniu domyślnie parametru „zfs_dmu_offset_next_sync=1” w wersji openzfs 2.1.4. Źródło błędu na razie nie zostało zidentyfikowane. Jako zalecane obejście problemu zaproponowano ustawienie na 0 parametru „/sys/module/zfs/parameters/zfs_dmu_offset_next_sync”.
Źródło: opennet.ru
