U prugettu OpenZFS 2.2.1, chì sviluppa l'implementazione di u sistema di fugliali ZFS per Linux è FreeBSD. A versione hè nutata per l'aghjunta di u supportu di u kernel. Linux 6.6 è un tentativu di eliminà u prublema chì porta à a corruzzione di i dati (zero di certi blocchi) in i fugliali dopu ch'elli sò stati copiati.
In principiu, era presumitu chì u prublema si prisenta solu in u ramu 2.2.x è hè causatu da un errore in u mecanismu di clonazione di bloccu inclusu in OpenZFS 2.2.0, chì permette di creà una copia di un schedariu o di una parte di ellu senza duplicà. dati, utilizendu in a seconda copia di referenze à i blocchi di dati esistenti di u schedariu fonte senza a so copia attuale. In OpenZFS 2.2.1, per bluccà u prublema, u mecanismu di clonazione di bloccu hè stata disattivata per difettu, è l'impostazione zfs_bclone_enabled hè stata aghjunta per rinvià u supportu per questu modu.
Più tardi, i sviluppatori anu signalatu a riproduzione di u prublema in cunfigurazioni cù a branca OpenZFS 2.1.x. L'ipotesi chì u prublema si manifesta nantu à i sistemi cù versioni più vechje di u pacchettu coreutils ùn hè stata ancu cunfirmata - l'errore hè statu ripruduttu cù successu in FreeBSD è Linux-distribuzioni cù l'ultima versione di coreutils 9.4.
A corruzzione di u schedariu si trova in circustanze abbastanza rari, per esempiu, l'esecuzione di u cumandimu "emerge -1 dev-lang/go" in Gentoo risulta in l'installazione di u toolkit Go cù i fugliali corrotti in /usr/lib/go/pkg/tool/. directory linux_amd64/. compile. Hè presumitu chì l'errore hà cuminciatu à apparisce dopu avè stabilitu u paràmetru predeterminatu "zfs_dmu_offset_next_sync = 1" in a versione openzfs 2.1.4. A fonte di l'errore ùn hè ancu stata identificata. Cum'è una soluzione alternativa per bluccà l'errore, hè prupostu di stabilisce u paràmetru "/sys/module/zfs/parameters/zfs_dmu_offset_next_sync" à 0.
Source: opennet.ru
