Package: zfs-dkms
Version: 2.3.2-1
Severity: grave
Tags: upstream patch
Dear Maintainer,
since the release of ZFS 2.0.0 back in 2020, ZFS contains a corruption
bug where snapshots and/or a dataset can get corrupted when using ZFS
encryption, if you're performing a "zfs send" at the same time as making
a snapshot (which can lead to data loss in specific scenarios, which is
why I tagged this as 'grave'; feel free to downgrade if you disagree).
This has been discussed upstream for years at
https://github.com/openzfs/zfs/issues/12014, but since the corruption
wasn't deterministic and it was hard to create a proper test, this was
apparently extremely hard to bisect.
Recently, though, people finally managed to reproduce this issue in a
controlled environment, were able to bisect the bug to merge request
https://github.com/openzfs/zfs/pull/7958.
A proposed fix for the issue is available at
https://github.com/openzfs/zfs/pull/17340. If I'm reading the comments
correctly, then this is clear broken behavior (two functions are called
that should never be called in this way), and even though it's not 100%
certain yet that this is definitely the fix for this long-standing
issue, people are fairly certain it is, and there's already discussions
about backporting it to 2.2.x (https://github.com/openzfs/zfs/pull/17325).
Given that we're in Hard Freeze already, I doubt that zfs-2.3.3 will get
released in time to still make it into trixie.
However, given that A) the fix is extremely simple (two lines of code
changed), B) it fixes a bug that can lead to data loss, C) the current
implementation is definitely wrong, I was wondering if that change can
be added to Debian's package and released as a 2.3.2-2 or similar (and
maybe even backported to bookworm-bpo).