Revision 6141f3bd tests/qemu-iotests/081

b/tests/qemu-iotests/081
44 44
_supported_proto generic
45 45
_supported_os Linux
46 46

  
47
function do_run_qemu()
48
{
49
    echo Testing: "$@" | _filter_imgfmt
50
    $QEMU -nographic -qmp stdio -serial none "$@"
51
    echo
52
}
53

  
54
function run_qemu()
55
{
56
    do_run_qemu "$@" 2>&1 | _filter_testdir | _filter_qmp | _filter_qemu_io
57
}
58

  
47 59
quorum="file.driver=quorum,file.children.0.file.filename=$TEST_DIR/1.raw"
48 60
quorum="$quorum,file.children.1.file.filename=$TEST_DIR/2.raw"
49 61
quorum="$quorum,file.children.2.file.filename=$TEST_DIR/3.raw,file.vote-threshold=2"
......
80 92
$QEMU_IO -c "open -o $quorum" -c "read -P 0x32 0 $size" | _filter_qemu_io
81 93

  
82 94
echo
95
echo "== checking mixed reference/option specification =="
96

  
97
run_qemu -drive "file=$TEST_DIR/2.raw,format=$IMGFMT,if=none,id=drive2" <<EOF
98
{ "execute": "qmp_capabilities" }
99
{ "execute": "blockdev-add",
100
    "arguments": {
101
        "options": {
102
            "driver": "quorum",
103
            "id": "drive0-quorum",
104
            "vote-threshold": 2,
105
            "children": [
106
                {
107
                    "driver": "raw",
108
                    "file": {
109
                        "driver": "file",
110
                        "filename": "$TEST_DIR/1.raw"
111
                    }
112
                },
113
                "drive2",
114
                {
115
                    "driver": "raw",
116
                    "file": {
117
                        "driver": "file",
118
                        "filename": "$TEST_DIR/3.raw"
119
                    }
120
                }
121
            ]
122
        }
123
    }
124
}
125
{ "execute": "human-monitor-command",
126
    "arguments": {
127
        "command-line": 'qemu-io drive0-quorum "read -P 0x32 0 $size"'
128
    }
129
}
130
{ "execute": "quit" }
131
EOF
132

  
133
echo
83 134
echo "== breaking quorum =="
84 135

  
85 136
$QEMU_IO -c "write -P 0x41 0 $size" "$TEST_DIR/1.raw" | _filter_qemu_io

Also available in: Unified diff