Commit e615053b authored by Kevin Wolf's avatar Kevin Wolf
Browse files

qemu-iotests: Reopen qcow2 with lazy-refcounts change



Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
Reviewed-by: default avatarMax Reitz <mreitz@redhat.com>
parent 5b0959a7
Loading
Loading
Loading
Loading
+27 −0
Original line number Diff line number Diff line
@@ -147,6 +147,33 @@ $PYTHON qcow2.py "$TEST_IMG".base dump-header | grep incompatible_features
_check_test_img
TEST_IMG="$TEST_IMG".base _check_test_img

echo
echo "== Changing lazy_refcounts setting at runtime =="

IMGOPTS="compat=1.1,lazy_refcounts=off"
_make_test_img $size

$QEMU_IO -c "reopen -o lazy-refcounts=on" \
         -c "write -P 0x5a 0 512" \
         -c "sigraise $(kill -l KILL)" "$TEST_IMG" 2>&1 \
    | _filter_qemu_io

# The dirty bit must be set
$PYTHON qcow2.py "$TEST_IMG" dump-header | grep incompatible_features
_check_test_img

IMGOPTS="compat=1.1,lazy_refcounts=on"
_make_test_img $size

$QEMU_IO -c "reopen -o lazy-refcounts=off" \
         -c "write -P 0x5a 0 512" \
         -c "sigraise $(kill -l KILL)" "$TEST_IMG" 2>&1 \
    | _filter_qemu_io

# The dirty bit must not be set
$PYTHON qcow2.py "$TEST_IMG" dump-header | grep incompatible_features
_check_test_img


# success, all done
echo "*** done"
+18 −0
Original line number Diff line number Diff line
@@ -74,4 +74,22 @@ incompatible_features 0x0
incompatible_features     0x0
No errors were found on the image.
No errors were found on the image.

== Changing lazy_refcounts setting at runtime ==
Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=134217728
wrote 512/512 bytes at offset 0
512 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
./common.config: Killed                  ( exec "$QEMU_IO_PROG" $QEMU_IO_OPTIONS "$@" )
incompatible_features     0x1
ERROR cluster 5 refcount=0 reference=1
ERROR OFLAG_COPIED data cluster: l2_entry=8000000000050000 refcount=0

2 errors were found on the image.
Data may be corrupted, or further writes to the image may corrupt it.
Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=134217728
wrote 512/512 bytes at offset 0
512 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
./common.config: Killed                  ( exec "$QEMU_IO_PROG" $QEMU_IO_OPTIONS "$@" )
incompatible_features     0x0
No errors were found on the image.
*** done