generic: test adding filesystem-level fscrypt key via key_id
[xfstests-dev.git] / tests / generic / 127
1 #! /bin/bash
2 # SPDX-License-Identifier: GPL-2.0
3 # Copyright (c) 2006 Silicon Graphics, Inc.  All Rights Reserved.
4 #
5 # FSQA Test No. 127
6 #
7 # fsx tests modified from CXFSQA tests
8 #   - fsx_00_lite
9 #   - fsx_05_lite_mmap
10 #   - fsx_10_std,
11 #   - fsx_15_std_mmap
12 #
13 seq=`basename $0`
14 seqres=$RESULT_DIR/$seq
15 echo "QA output created by $seq"
16
17 here=`pwd`
18 tmp=/tmp/$$
19 status=1        # failure is the default!
20 trap "_cleanup; exit \$status" 0 1 2 3 15
21
22 _cleanup()
23 {
24     rm -f $tmp.output
25 }
26
27 # get standard environment, filters and checks
28 . ./common/rc
29 . ./common/filter
30
31 FSX_FILE_SIZE=262144
32 FSX_ARGS="-q -l $FSX_FILE_SIZE -o 65536 -S 191110531 -N 100000"
33
34 _fsx_lite_nommap()
35 {
36     echo "=== FSX Light Mode, No Memory Mapping ==="
37     dd if=/dev/zero of=$TEST_DIR/fsx_lite_nommap bs=${FSX_FILE_SIZE} count=1 > /dev/null 2>&1
38     if ! ltp/fsx $FSX_ARGS -L -R -W $FSX_AVOID $TEST_DIR/fsx_lite_nommap > $tmp.output 2>&1
39     then
40         echo "ltp/fsx $FSX_ARGS -L -R -W $TEST_DIR/fsx_lite_nommap"
41         cat $tmp.output
42         return 1
43     fi
44     cat $tmp.output
45     return 0
46 }
47
48 _fsx_lite_mmap()
49 {
50     echo "=== FSX Light Mode, Memory Mapping ==="
51     dd if=/dev/zero of=$TEST_DIR/fsx_lite_mmap bs=${FSX_FILE_SIZE} count=1 > /dev/null 2>&1
52     if ! ltp/fsx $FSX_ARGS -L $FSX_AVOID $TEST_DIR/fsx_lite_mmap > $tmp.output 2>&1
53     then
54         echo "ltp/fsx $FSX_ARGS -L fsx_lite_mmap"
55         cat $tmp.output
56         return 1
57     fi
58     cat $tmp.output
59     return 0
60 }
61
62 _fsx_std_nommap()
63 {
64     echo "=== FSX Standard Mode, No Memory Mapping ==="
65     if ! ltp/fsx $FSX_ARGS -R -W $FSX_AVOID $TEST_DIR/fsx_std_nommap > $tmp.output 2>&1
66     then
67         echo "ltp/fsx $FSX_ARGS -R -W fsx_std_nommap"
68         cat $tmp.output
69         return 1
70     fi
71     cat $tmp.output
72     return 0
73 }
74
75 _fsx_std_mmap()
76 {
77     echo "=== FSX Standard Mode, Memory Mapping ==="
78     if ! ltp/fsx $FSX_ARGS $FSX_AVOID $TEST_DIR/fsx_std_mmap > $tmp.output 2>&1
79     then
80         echo "ltp/fsx $FSX_ARGS fsx_std_mmap"
81         cat $tmp.output
82         return 1
83     fi
84     cat $tmp.output
85     return 0
86 }
87
88 # real QA test starts here
89 _supported_fs generic
90 _supported_os Linux
91 _require_test
92
93 _fsx_lite_nommap
94 _fsx_lite_mmap
95
96 _fsx_std_nommap
97 _fsx_std_mmap
98
99 #flush cache after write
100 FSX_ARGS="-f $FSX_ARGS"
101 _fsx_std_nommap
102 _fsx_std_mmap
103
104 status=0
105 _cleanup
106 exit