mirror of
https://github.com/xemu-project/xemu.git
synced 2024-12-12 14:05:56 +00:00
e6c17669eb
Commit 934659c
switched the iotests to run qemu-io from a bash subshell,
in order to catch segfaults. This method is incompatible with the
current valgrind_qemu_io() bash function.
Move the valgrind usage into the exec subshell in _qemu_io_wrapper(),
while making sure the original return value is passed back to the
caller.
Update test output for tests 039, 061, and 137 as it looks for the
specific subshell command when the process is terminated.
Reported-by: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Jeff Cody <jcody@redhat.com>
Message-id: 0066fd85d26ca641a1c25135ff2479b7985701cf.1446232490.git.jcody@redhat.com
Reviewed-by: Max Reitz <mreitz@redhat.com>
Signed-off-by: Max Reitz <mreitz@redhat.com>
116 lines
4.5 KiB
Plaintext
116 lines
4.5 KiB
Plaintext
QA output created by 039
|
|
|
|
== Checking that image is clean on shutdown ==
|
|
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)
|
|
incompatible_features 0x0
|
|
No errors were found on the image.
|
|
|
|
== Creating a dirty image file ==
|
|
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 ( if [ "${VALGRIND_QEMU}" == "y" ]; then
|
|
exec valgrind --log-file="${VALGRIND_LOGFILE}" --error-exitcode=99 "$QEMU_IO_PROG" $QEMU_IO_OPTIONS "$@";
|
|
else
|
|
exec "$QEMU_IO_PROG" $QEMU_IO_OPTIONS "$@";
|
|
fi )
|
|
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.
|
|
|
|
== Read-only access must still work ==
|
|
read 512/512 bytes at offset 0
|
|
512 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
incompatible_features 0x1
|
|
|
|
== Repairing the image file must succeed ==
|
|
ERROR cluster 5 refcount=0 reference=1
|
|
Rebuilding refcount structure
|
|
Repairing cluster 1 refcount=1 reference=0
|
|
Repairing cluster 2 refcount=1 reference=0
|
|
The following inconsistencies were found and repaired:
|
|
|
|
0 leaked clusters
|
|
1 corruptions
|
|
|
|
Double checking the fixed image now...
|
|
No errors were found on the image.
|
|
incompatible_features 0x0
|
|
|
|
== Data should still be accessible after repair ==
|
|
read 512/512 bytes at offset 0
|
|
512 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
|
|
== Opening a dirty image read/write should repair 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 ( if [ "${VALGRIND_QEMU}" == "y" ]; then
|
|
exec valgrind --log-file="${VALGRIND_LOGFILE}" --error-exitcode=99 "$QEMU_IO_PROG" $QEMU_IO_OPTIONS "$@";
|
|
else
|
|
exec "$QEMU_IO_PROG" $QEMU_IO_OPTIONS "$@";
|
|
fi )
|
|
incompatible_features 0x1
|
|
ERROR cluster 5 refcount=0 reference=1
|
|
Rebuilding refcount structure
|
|
Repairing cluster 1 refcount=1 reference=0
|
|
Repairing cluster 2 refcount=1 reference=0
|
|
wrote 512/512 bytes at offset 0
|
|
512 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
incompatible_features 0x0
|
|
|
|
== Creating an image file with lazy_refcounts=off ==
|
|
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 ( if [ "${VALGRIND_QEMU}" == "y" ]; then
|
|
exec valgrind --log-file="${VALGRIND_LOGFILE}" --error-exitcode=99 "$QEMU_IO_PROG" $QEMU_IO_OPTIONS "$@";
|
|
else
|
|
exec "$QEMU_IO_PROG" $QEMU_IO_OPTIONS "$@";
|
|
fi )
|
|
incompatible_features 0x0
|
|
No errors were found on the image.
|
|
|
|
== Committing to a backing file with lazy_refcounts=on ==
|
|
Formatting 'TEST_DIR/t.IMGFMT.base', fmt=IMGFMT size=134217728
|
|
Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=134217728 backing_file=TEST_DIR/t.IMGFMT.base
|
|
wrote 512/512 bytes at offset 0
|
|
512 bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
Image committed.
|
|
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 ( if [ "${VALGRIND_QEMU}" == "y" ]; then
|
|
exec valgrind --log-file="${VALGRIND_LOGFILE}" --error-exitcode=99 "$QEMU_IO_PROG" $QEMU_IO_OPTIONS "$@";
|
|
else
|
|
exec "$QEMU_IO_PROG" $QEMU_IO_OPTIONS "$@";
|
|
fi )
|
|
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 ( if [ "${VALGRIND_QEMU}" == "y" ]; then
|
|
exec valgrind --log-file="${VALGRIND_LOGFILE}" --error-exitcode=99 "$QEMU_IO_PROG" $QEMU_IO_OPTIONS "$@";
|
|
else
|
|
exec "$QEMU_IO_PROG" $QEMU_IO_OPTIONS "$@";
|
|
fi )
|
|
incompatible_features 0x0
|
|
No errors were found on the image.
|
|
*** done
|