]> git.apps.os.sepia.ceph.com Git - xfstests-dev.git/commit
xfs: more multi-block atomic writes tests
authorDarrick J. Wong <djwong@kernel.org>
Thu, 26 Jun 2025 00:27:35 +0000 (17:27 -0700)
committerZorro Lang <zlang@kernel.org>
Thu, 10 Jul 2025 21:17:44 +0000 (05:17 +0800)
commit7ca990e22e0d61421d2314a81f10e2f77ac8f53a
tree7ddd2c4d940cc627d07d6918b446e10095ff88f6
parentfa8694c823d853079775fe9cc327a595a40fe6b6
xfs: more multi-block atomic writes tests

Add xfs specific tests for realtime volumes and error recovery.

The first test validates multi-block atomic writes on a realtime file. We
perform basic atomic writes operations within the advertised sizes and ensure
that atomic writes will fail outside of these bounds. The hardware used in this
test is not required to support atomic writes.

The second test verifies that a large atomic write can complete after a crash.
The error is injected while attempting to free an extent. We ensure that this
error occurs by first creating a heavily fragmented filesystem. After recovery,
we check that the write completes successfully.

The third test verifies that a large atomic write on a reflinked file can
complete after a crash. We start with two files that share the same data and
inject an error while attempting to perform a write on one of the files. After
recovery, we verify that these files now contain different data, indicating
that the write has succeeded.

Signed-off-by: Darrick J. Wong <djwong@kernel.org>
Signed-off-by: Catherine Hoang <catherine.hoang@oracle.com>
Reviewed-by: John Garry <john.g.garry@oracle.com>
Signed-off-by: Zorro Lang <zlang@kernel.org>
tests/xfs/838 [new file with mode: 0755]
tests/xfs/838.out [new file with mode: 0644]
tests/xfs/839 [new file with mode: 0755]
tests/xfs/839.out [new file with mode: 0644]
tests/xfs/840 [new file with mode: 0755]
tests/xfs/840.out [new file with mode: 0644]