4 # Make sure the chattr dump flag gets picked up by xfsdump without a sync
6 # http://oss.sgi.com/bugzilla/show_bug.cgi?id=340
8 #-----------------------------------------------------------------------
9 # Copyright (c) 2008 Christoph Hellwig.
11 # This program is free software; you can redistribute it and/or
12 # modify it under the terms of the GNU General Public License as
13 # published by the Free Software Foundation.
15 # This program is distributed in the hope that it would be useful,
16 # but WITHOUT ANY WARRANTY; without even the implied warranty of
17 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 # GNU General Public License for more details.
20 # You should have received a copy of the GNU General Public License
21 # along with this program; if not, write the Free Software Foundation,
22 # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
23 #-----------------------------------------------------------------------
27 seqres=$RESULT_DIR/$seq
28 echo "QA output created by $seq"
32 status=1 # failure is the default!
37 rm -f $TEST_DIR/dumpfile
39 trap "_cleanup; exit \$status" 0 1 2 3 15
42 # Perform a level 0 dump that respects the chattr dump exclude flag,
43 # and grep the output for the inode number we expect / do not expect
46 # Only dump a subtree so we get away with a single partition for
47 # the subtree to be dumped and the dump file.
51 xfsdump -l 0 -s d -F \
53 -f $TEST_DIR/dumpfile -e -v excluded_files=debug $TEST_DIR \
55 | sed -e 's/xfsdump: pruned ino [0-9]*, owner 0, estimated size 0: skip flag set/xfsdump: pruned ino NNN, owner 0, estimated size 0: skip flag set/'
58 # get standard environment, filters and checks
62 # real QA test starts here
69 echo "Preparing subtree"
72 inum=`stat --format "%i" $TEST_DIR/d/t`
74 echo "No dump exclude flag set (should not be skipped)"
77 echo "Dump exclude flag set, but no sync yet (should be skipped)"
78 chattr +d $TEST_DIR/d/t
81 echo "Dump exclude flag set, after sync (should be skipped)"