generic: test for file loss after mix of rename, fsync and inode eviction
[xfstests-dev.git] / tests / generic / 623
1 #! /bin/bash
2 # SPDX-License-Identifier: GPL-2.0-only
3 # Copyright 2021 Red Hat, Inc.
4 #
5 # FS QA Test No. 623
6 #
7 # Test a write fault scenario on a shutdown fs.
8 #
9 . ./common/preamble
10 _begin_fstest auto quick shutdown
11
12 . ./common/filter
13
14 _supported_fs generic
15 _require_scratch_nocheck
16 _require_scratch_shutdown
17
18 _scratch_mkfs &>> $seqres.full
19 _scratch_mount
20
21 # XFS had a regression where it failed to check shutdown status in the fault
22 # path. This produced an iomap warning because writeback failure clears Uptodate
23 # status on the page.
24 file=$SCRATCH_MNT/file
25 $XFS_IO_PROG -fc "pwrite 0 4k" -c fsync $file | _filter_xfs_io
26 ulimit -c 0
27 $XFS_IO_PROG -x -c "mmap 0 4k" -c "mwrite 0 4k" -c shutdown -c fsync \
28         -c "mwrite 0 4k" $file | _filter_xfs_io
29
30 # success, all done
31 status=0
32 exit