 e6c17669eb
			
		
	
	
		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>
		
			
				
	
	
		
			433 lines
		
	
	
		
			15 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			433 lines
		
	
	
		
			15 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| QA output created by 061
 | |
| 
 | |
| === Testing version downgrade with zero expansion ===
 | |
| 
 | |
| Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=67108864
 | |
| wrote 131072/131072 bytes at offset 0
 | |
| 128 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
 | |
| magic                     0x514649fb
 | |
| version                   3
 | |
| backing_file_offset       0x0
 | |
| backing_file_size         0x0
 | |
| cluster_bits              16
 | |
| size                      67108864
 | |
| crypt_method              0
 | |
| l1_size                   1
 | |
| l1_table_offset           0x30000
 | |
| refcount_table_offset     0x10000
 | |
| refcount_table_clusters   1
 | |
| nb_snapshots              0
 | |
| snapshot_offset           0x0
 | |
| incompatible_features     0x0
 | |
| compatible_features       0x1
 | |
| autoclear_features        0x0
 | |
| refcount_order            4
 | |
| header_length             104
 | |
| 
 | |
| magic                     0x514649fb
 | |
| version                   2
 | |
| backing_file_offset       0x0
 | |
| backing_file_size         0x0
 | |
| cluster_bits              16
 | |
| size                      67108864
 | |
| crypt_method              0
 | |
| l1_size                   1
 | |
| l1_table_offset           0x30000
 | |
| refcount_table_offset     0x10000
 | |
| refcount_table_clusters   1
 | |
| nb_snapshots              0
 | |
| snapshot_offset           0x0
 | |
| incompatible_features     0x0
 | |
| compatible_features       0x0
 | |
| autoclear_features        0x0
 | |
| refcount_order            4
 | |
| header_length             72
 | |
| 
 | |
| Header extension:
 | |
| magic                     0x6803f857
 | |
| length                    144
 | |
| data                      <binary>
 | |
| 
 | |
| read 131072/131072 bytes at offset 0
 | |
| 128 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
 | |
| No errors were found on the image.
 | |
| 
 | |
| === Testing dirty version downgrade ===
 | |
| 
 | |
| Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=67108864
 | |
| wrote 131072/131072 bytes at offset 0
 | |
| 128 KiB, 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 )
 | |
| magic                     0x514649fb
 | |
| version                   3
 | |
| backing_file_offset       0x0
 | |
| backing_file_size         0x0
 | |
| cluster_bits              16
 | |
| size                      67108864
 | |
| crypt_method              0
 | |
| l1_size                   1
 | |
| l1_table_offset           0x30000
 | |
| refcount_table_offset     0x10000
 | |
| refcount_table_clusters   1
 | |
| nb_snapshots              0
 | |
| snapshot_offset           0x0
 | |
| incompatible_features     0x1
 | |
| compatible_features       0x1
 | |
| autoclear_features        0x0
 | |
| refcount_order            4
 | |
| header_length             104
 | |
| 
 | |
| ERROR cluster 5 refcount=0 reference=1
 | |
| ERROR cluster 6 refcount=0 reference=1
 | |
| Rebuilding refcount structure
 | |
| Repairing cluster 1 refcount=1 reference=0
 | |
| Repairing cluster 2 refcount=1 reference=0
 | |
| magic                     0x514649fb
 | |
| version                   2
 | |
| backing_file_offset       0x0
 | |
| backing_file_size         0x0
 | |
| cluster_bits              16
 | |
| size                      67108864
 | |
| crypt_method              0
 | |
| l1_size                   1
 | |
| l1_table_offset           0x30000
 | |
| refcount_table_offset     0x80000
 | |
| refcount_table_clusters   1
 | |
| nb_snapshots              0
 | |
| snapshot_offset           0x0
 | |
| incompatible_features     0x0
 | |
| compatible_features       0x0
 | |
| autoclear_features        0x0
 | |
| refcount_order            4
 | |
| header_length             72
 | |
| 
 | |
| Header extension:
 | |
| magic                     0x6803f857
 | |
| length                    144
 | |
| data                      <binary>
 | |
| 
 | |
| read 131072/131072 bytes at offset 0
 | |
| 128 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
 | |
| No errors were found on the image.
 | |
| 
 | |
| === Testing version downgrade with unknown compat/autoclear flags ===
 | |
| 
 | |
| Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=67108864
 | |
| magic                     0x514649fb
 | |
| version                   3
 | |
| backing_file_offset       0x0
 | |
| backing_file_size         0x0
 | |
| cluster_bits              16
 | |
| size                      67108864
 | |
| crypt_method              0
 | |
| l1_size                   1
 | |
| l1_table_offset           0x30000
 | |
| refcount_table_offset     0x10000
 | |
| refcount_table_clusters   1
 | |
| nb_snapshots              0
 | |
| snapshot_offset           0x0
 | |
| incompatible_features     0x0
 | |
| compatible_features       0x40000000000
 | |
| autoclear_features        0x40000000000
 | |
| refcount_order            4
 | |
| header_length             104
 | |
| 
 | |
| magic                     0x514649fb
 | |
| version                   2
 | |
| backing_file_offset       0x0
 | |
| backing_file_size         0x0
 | |
| cluster_bits              16
 | |
| size                      67108864
 | |
| crypt_method              0
 | |
| l1_size                   1
 | |
| l1_table_offset           0x30000
 | |
| refcount_table_offset     0x10000
 | |
| refcount_table_clusters   1
 | |
| nb_snapshots              0
 | |
| snapshot_offset           0x0
 | |
| incompatible_features     0x0
 | |
| compatible_features       0x0
 | |
| autoclear_features        0x0
 | |
| refcount_order            4
 | |
| header_length             72
 | |
| 
 | |
| Header extension:
 | |
| magic                     0x6803f857
 | |
| length                    144
 | |
| data                      <binary>
 | |
| 
 | |
| No errors were found on the image.
 | |
| 
 | |
| === Testing version upgrade and resize ===
 | |
| 
 | |
| Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=67108864
 | |
| wrote 65536/65536 bytes at offset 44040192
 | |
| 64 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
 | |
| magic                     0x514649fb
 | |
| version                   2
 | |
| backing_file_offset       0x0
 | |
| backing_file_size         0x0
 | |
| cluster_bits              16
 | |
| size                      67108864
 | |
| crypt_method              0
 | |
| l1_size                   1
 | |
| l1_table_offset           0x30000
 | |
| refcount_table_offset     0x10000
 | |
| refcount_table_clusters   1
 | |
| nb_snapshots              0
 | |
| snapshot_offset           0x0
 | |
| incompatible_features     0x0
 | |
| compatible_features       0x0
 | |
| autoclear_features        0x0
 | |
| refcount_order            4
 | |
| header_length             72
 | |
| 
 | |
| magic                     0x514649fb
 | |
| version                   3
 | |
| backing_file_offset       0x0
 | |
| backing_file_size         0x0
 | |
| cluster_bits              16
 | |
| size                      134217728
 | |
| crypt_method              0
 | |
| l1_size                   1
 | |
| l1_table_offset           0x30000
 | |
| refcount_table_offset     0x10000
 | |
| refcount_table_clusters   1
 | |
| nb_snapshots              0
 | |
| snapshot_offset           0x0
 | |
| incompatible_features     0x0
 | |
| compatible_features       0x1
 | |
| autoclear_features        0x0
 | |
| refcount_order            4
 | |
| header_length             104
 | |
| 
 | |
| Header extension:
 | |
| magic                     0x6803f857
 | |
| length                    144
 | |
| data                      <binary>
 | |
| 
 | |
| read 65536/65536 bytes at offset 44040192
 | |
| 64 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
 | |
| No errors were found on the image.
 | |
| 
 | |
| === Testing dirty lazy_refcounts=off ===
 | |
| 
 | |
| Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=67108864
 | |
| wrote 131072/131072 bytes at offset 0
 | |
| 128 KiB, 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 )
 | |
| magic                     0x514649fb
 | |
| version                   3
 | |
| backing_file_offset       0x0
 | |
| backing_file_size         0x0
 | |
| cluster_bits              16
 | |
| size                      67108864
 | |
| crypt_method              0
 | |
| l1_size                   1
 | |
| l1_table_offset           0x30000
 | |
| refcount_table_offset     0x10000
 | |
| refcount_table_clusters   1
 | |
| nb_snapshots              0
 | |
| snapshot_offset           0x0
 | |
| incompatible_features     0x1
 | |
| compatible_features       0x1
 | |
| autoclear_features        0x0
 | |
| refcount_order            4
 | |
| header_length             104
 | |
| 
 | |
| ERROR cluster 5 refcount=0 reference=1
 | |
| ERROR cluster 6 refcount=0 reference=1
 | |
| Rebuilding refcount structure
 | |
| Repairing cluster 1 refcount=1 reference=0
 | |
| Repairing cluster 2 refcount=1 reference=0
 | |
| magic                     0x514649fb
 | |
| version                   3
 | |
| backing_file_offset       0x0
 | |
| backing_file_size         0x0
 | |
| cluster_bits              16
 | |
| size                      67108864
 | |
| crypt_method              0
 | |
| l1_size                   1
 | |
| l1_table_offset           0x30000
 | |
| refcount_table_offset     0x80000
 | |
| refcount_table_clusters   1
 | |
| nb_snapshots              0
 | |
| snapshot_offset           0x0
 | |
| incompatible_features     0x0
 | |
| compatible_features       0x0
 | |
| autoclear_features        0x0
 | |
| refcount_order            4
 | |
| header_length             104
 | |
| 
 | |
| Header extension:
 | |
| magic                     0x6803f857
 | |
| length                    144
 | |
| data                      <binary>
 | |
| 
 | |
| read 131072/131072 bytes at offset 0
 | |
| 128 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
 | |
| No errors were found on the image.
 | |
| 
 | |
| === Testing backing file ===
 | |
| 
 | |
| Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=67108864
 | |
| Formatting 'TEST_DIR/t.IMGFMT.base', fmt=IMGFMT size=67108864
 | |
| wrote 131072/131072 bytes at offset 0
 | |
| 128 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
 | |
| read 131072/131072 bytes at offset 0
 | |
| 128 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
 | |
| read 131072/131072 bytes at offset 0
 | |
| 128 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
 | |
| No errors were found on the image.
 | |
| 
 | |
| === Testing invalid configurations ===
 | |
| 
 | |
| Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=67108864
 | |
| Lazy refcounts only supported with compatibility level 1.1 and above (use compat=1.1 or greater)
 | |
| qemu-img: Error while amending options: Invalid argument
 | |
| Lazy refcounts only supported with compatibility level 1.1 and above (use compat=1.1 or greater)
 | |
| qemu-img: Error while amending options: Invalid argument
 | |
| Unknown compatibility level 0.42.
 | |
| qemu-img: Error while amending options: Invalid argument
 | |
| qemu-img: Invalid parameter 'foo'
 | |
| Changing the cluster size is not supported.
 | |
| qemu-img: Error while amending options: Operation not supported
 | |
| Changing the encryption flag is not supported.
 | |
| qemu-img: Error while amending options: Operation not supported
 | |
| Cannot change preallocation mode.
 | |
| qemu-img: Error while amending options: Operation not supported
 | |
| 
 | |
| === Testing correct handling of unset value ===
 | |
| 
 | |
| Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=67108864
 | |
| Should work:
 | |
| Should not work:
 | |
| Changing the cluster size is not supported.
 | |
| qemu-img: Error while amending options: Operation not supported
 | |
| 
 | |
| === Testing zero expansion on inactive clusters ===
 | |
| 
 | |
| Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=67108864
 | |
| wrote 131072/131072 bytes at offset 0
 | |
| 128 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
 | |
| wrote 131072/131072 bytes at offset 0
 | |
| 128 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
 | |
| No errors were found on the image.
 | |
| read 131072/131072 bytes at offset 0
 | |
| 128 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
 | |
| No errors were found on the image.
 | |
| read 131072/131072 bytes at offset 0
 | |
| 128 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
 | |
| 
 | |
| === Testing zero expansion on shared L2 table ===
 | |
| 
 | |
| Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=67108864
 | |
| wrote 131072/131072 bytes at offset 0
 | |
| 128 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
 | |
| No errors were found on the image.
 | |
| read 131072/131072 bytes at offset 0
 | |
| 128 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
 | |
| No errors were found on the image.
 | |
| read 131072/131072 bytes at offset 0
 | |
| 128 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
 | |
| 
 | |
| === Testing zero expansion on backed image ===
 | |
| 
 | |
| Formatting 'TEST_DIR/t.IMGFMT.base', fmt=IMGFMT size=67108864
 | |
| wrote 131072/131072 bytes at offset 0
 | |
| 128 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
 | |
| Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=67108864 backing_file=TEST_DIR/t.IMGFMT.base
 | |
| read 131072/131072 bytes at offset 0
 | |
| 128 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
 | |
| wrote 65536/65536 bytes at offset 0
 | |
| 64 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
 | |
| No errors were found on the image.
 | |
| read 65536/65536 bytes at offset 0
 | |
| 64 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
 | |
| read 65536/65536 bytes at offset 65536
 | |
| 64 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
 | |
| 
 | |
| === Testing zero expansion on backed inactive clusters ===
 | |
| 
 | |
| Formatting 'TEST_DIR/t.IMGFMT.base', fmt=IMGFMT size=67108864
 | |
| wrote 131072/131072 bytes at offset 0
 | |
| 128 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
 | |
| Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=67108864 backing_file=TEST_DIR/t.IMGFMT.base
 | |
| wrote 65536/65536 bytes at offset 0
 | |
| 64 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
 | |
| wrote 131072/131072 bytes at offset 0
 | |
| 128 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
 | |
| No errors were found on the image.
 | |
| read 131072/131072 bytes at offset 0
 | |
| 128 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
 | |
| No errors were found on the image.
 | |
| read 65536/65536 bytes at offset 0
 | |
| 64 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
 | |
| read 65536/65536 bytes at offset 65536
 | |
| 64 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
 | |
| 
 | |
| === Testing zero expansion on backed image with shared L2 table ===
 | |
| 
 | |
| Formatting 'TEST_DIR/t.IMGFMT.base', fmt=IMGFMT size=67108864
 | |
| wrote 131072/131072 bytes at offset 0
 | |
| 128 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
 | |
| Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=67108864 backing_file=TEST_DIR/t.IMGFMT.base
 | |
| wrote 131072/131072 bytes at offset 0
 | |
| 128 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
 | |
| No errors were found on the image.
 | |
| read 131072/131072 bytes at offset 0
 | |
| 128 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
 | |
| No errors were found on the image.
 | |
| read 131072/131072 bytes at offset 0
 | |
| 128 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
 | |
| 
 | |
| === Testing preallocated zero expansion on full image ===
 | |
| 
 | |
| Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=67108864
 | |
| wrote 67108864/67108864 bytes at offset 0
 | |
| 64 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
 | |
| wrote 67108864/67108864 bytes at offset 0
 | |
| 64 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
 | |
| No errors were found on the image.
 | |
| read 67108864/67108864 bytes at offset 0
 | |
| 64 MiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
 | |
| 
 | |
| === Testing progress report without snapshot ===
 | |
| 
 | |
| Formatting 'TEST_DIR/t.IMGFMT.base', fmt=IMGFMT size=4294967296
 | |
| Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=4294967296 backing_file=TEST_DIR/t.IMGFMT.base
 | |
| wrote 65536/65536 bytes at offset 0
 | |
| 64 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
 | |
| wrote 65536/65536 bytes at offset 1073741824
 | |
| 64 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
 | |
| wrote 65536/65536 bytes at offset 2147483648
 | |
| 64 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
 | |
| wrote 65536/65536 bytes at offset 3221225472
 | |
| 64 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
 | |
|     (0.00/100%)
 | |
|     (12.50/100%)
 | |
|     (25.00/100%)
 | |
|     (37.50/100%)
 | |
|     (50.00/100%)
 | |
|     (62.50/100%)
 | |
|     (75.00/100%)
 | |
|     (87.50/100%)
 | |
|     (100.00/100%)
 | |
|     (100.00/100%)
 | |
| No errors were found on the image.
 | |
| 
 | |
| === Testing progress report with snapshot ===
 | |
| 
 | |
| Formatting 'TEST_DIR/t.IMGFMT.base', fmt=IMGFMT size=4294967296
 | |
| Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=4294967296 backing_file=TEST_DIR/t.IMGFMT.base
 | |
| wrote 65536/65536 bytes at offset 0
 | |
| 64 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
 | |
| wrote 65536/65536 bytes at offset 1073741824
 | |
| 64 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
 | |
| wrote 65536/65536 bytes at offset 2147483648
 | |
| 64 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
 | |
| wrote 65536/65536 bytes at offset 3221225472
 | |
| 64 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
 | |
|     (0.00/100%)
 | |
|     (6.25/100%)
 | |
|     (12.50/100%)
 | |
|     (18.75/100%)
 | |
|     (25.00/100%)
 | |
|     (31.25/100%)
 | |
|     (37.50/100%)
 | |
|     (43.75/100%)
 | |
|     (50.00/100%)
 | |
|     (56.25/100%)
 | |
|     (62.50/100%)
 | |
|     (68.75/100%)
 | |
|     (75.00/100%)
 | |
|     (81.25/100%)
 | |
|     (87.50/100%)
 | |
|     (93.75/100%)
 | |
|     (100.00/100%)
 | |
|     (100.00/100%)
 | |
| No errors were found on the image.
 | |
| *** done
 |