summaryrefslogtreecommitdiff
path: root/tests/btrfs-w.test
blob: 1fa80469f8291243d3a22f2007fd3a82cdc971f0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#!/bin/sh

# Check decoding of btrfs ioctl w/ live ioctls.

# WARNING: USE OF THIS TEST WILL MODIFY AN EXISTING BTRFS FILE SYSTEM

# Typical usage:
# mkfs.btrfs <dev>
# mount <dev> /mnt
# BTRFS_MOUNTPOINT=/mnt make check TESTS="btrfs-w"
# umount /mnt

. "${srcdir=.}/init.sh"

if [ -z "${BTRFS_MOUNTPOINT}" ]; then
    skip_ "\$BTRFS_MOUNTPOINT not set"
elif [ ! -d "${BTRFS_MOUNTPOINT}" ]; then
    skip_ "\$BTRFS_MOUNTPOINT does not point to a directory"
fi

run_prog ../btrfs -w "${BTRFS_MOUNTPOINT}" > /dev/null
run_strace -a16 -eioctl $args > "$EXP"
check_prog grep
grep -v '^ioctl([012],' < "$LOG" > "$OUT"
match_diff "$OUT" "$EXP"

rm -f "$EXP" "$OUT"

exit 0