fstests: move test group info to test files
[xfstests-dev.git] / tests / btrfs / 161
1 #! /bin/bash
2 # SPDX-License-Identifier: GPL-2.0
3 # Copyright (c) 2018 Oracle.  All Rights Reserved.
4 #
5 # FS QA Test 161
6 #
7 # seed sprout functionality test
8 #  Create a seed device, mount it and, add a new device to create a
9 #  sprout filesystem.
10 #
11 . ./common/preamble
12 _begin_fstest auto quick volume seed
13
14 # Import common functions.
15 . ./common/filter
16
17 # real QA test starts here
18
19 # Modify as appropriate.
20 _supported_fs btrfs
21 _require_command "$BTRFS_TUNE_PROG" btrfstune
22 _require_scratch_dev_pool 2
23
24 _scratch_dev_pool_get 2
25
26 dev_seed=$(echo $SCRATCH_DEV_POOL | awk '{print $1}')
27 dev_sprout=$(echo $SCRATCH_DEV_POOL | awk '{print $2}')
28
29 create_seed()
30 {
31         _mkfs_dev $dev_seed
32         run_check _mount $dev_seed $SCRATCH_MNT
33         $XFS_IO_PROG -f -d -c "pwrite -S 0xab 0 256K" $SCRATCH_MNT/foobar >\
34                 /dev/null
35         echo -- golden --
36         od -x $SCRATCH_MNT/foobar
37         _run_btrfs_util_prog filesystem show -m $SCRATCH_MNT
38         _scratch_unmount
39         $BTRFS_TUNE_PROG -S 1 $dev_seed
40         run_check _mount $dev_seed $SCRATCH_MNT
41 }
42
43 create_sprout()
44 {
45         _run_btrfs_util_prog device add -f $dev_sprout $SCRATCH_MNT
46         _scratch_unmount
47         run_check _mount $dev_sprout $SCRATCH_MNT
48         echo -- sprout --
49         od -x $SCRATCH_MNT/foobar
50         _scratch_unmount
51 }
52
53 create_seed
54 create_sprout
55
56 _scratch_dev_pool_put
57
58 status=0
59 exit