generic: test for file fsync after moving it to a new parent directory
[xfstests-dev.git] / tests / generic / 442
1 #! /bin/bash
2 # SPDX-License-Identifier: GPL-2.0
3 # Copyright (c) 2017, Jeff Layton <jlayton@redhat.com>
4 #
5 # FS QA Test No. 442
6 #
7 # Test writeback error handling when writing to block devices via pagecache.
8 # See src/fsync-err.c for details of what test actually does.
9 #
10 seq=`basename $0`
11 seqres=$RESULT_DIR/$seq
12 echo "QA output created by $seq"
13
14 here=`pwd`
15 tmp=/tmp/$$
16 status=1    # failure is the default!
17 trap "_cleanup; exit \$status" 0 1 2 3 15
18
19 _cleanup()
20 {
21     cd /
22     rm -rf $tmp.* $testdir
23     _dmerror_cleanup
24 }
25
26 # get standard environment, filters and checks
27 . ./common/rc
28 . ./common/filter
29 . ./common/dmerror
30
31 # real QA test starts here
32 _supported_os Linux
33 _require_scratch
34 _require_dm_target error
35 _require_test_program fsync-err
36 _require_test_program dmerror
37
38 rm -f $seqres.full
39
40 _dmerror_init
41
42 $here/src/fsync-err -d $here/src/dmerror $DMERROR_DEV
43
44 # success, all done
45 _dmerror_load_working_table
46 _dmerror_cleanup
47 _scratch_mkfs > $seqres.full 2>&1
48 status=0
49 exit