[PATCH v2 1/3] iotests: Specify explicit backing format where sensible

Ján Tomko jtomko at redhat.com
Thu Feb 27 09:03:23 UTC 2020


On a Thursday in 2020, Peter Krempa wrote:
>On Wed, Feb 26, 2020 at 20:39:26 -0600, Eric Blake wrote:
>> There are many existing qcow2 images that specify a backing file but
>> no format.  This has been the source of CVEs in the past, but has
>> become more prominent of a problem now that libvirt has switched to
>> -blockdev.  With older -drive, at least the probing was always done by
>> qemu (so the only risk of a changed format between successive boots of
>> a guest was if qemu was upgraded and probed differently).  But with
>> newer -blockdev, libvirt must specify a format; if libvirt guesses raw
>> where the image was formatted, this results in data corruption visible
>> to the guest; conversely, if libvirt guesses qcow2 where qemu was
>> using raw, this can result in potential security holes, so modern
>> libvirt instead refuses to use images without explicit backing format.
>>
>> The change in libvirt to reject images without explicit backing format
>> has pointed out that a number of tools have been far too reliant on
>> probing in the past.  It's time to set a better example in our own
>> iotests of properly setting this parameter.
>>
>> iotest calls to create, rebase, convert, and amend are all impacted to
>> some degree.  It's a bit annoying that we are inconsistent on command
>> line - while all of those accept -o backing_file=...,backing_fmt=...,
>> the shortcuts are different: create and rebase have -b and -F, convert
>> has -B but no -F, and amend has no shortcuts.
>>
>> Signed-off-by: Eric Blake <eblake at redhat.com>
>> ---
>
>[...]
>
>>  113 files changed, 414 insertions(+), 338 deletions(-)
>>
>> diff --git a/tests/qemu-iotests/017 b/tests/qemu-iotests/017
>> index 0a4b854e6520..585512bb296b 100755
>> --- a/tests/qemu-iotests/017
>> +++ b/tests/qemu-iotests/017
>> @@ -66,7 +66,7 @@ echo "Creating test image with backing file"
>>  echo
>>
>>  TEST_IMG=$TEST_IMG_SAVE
>> -_make_test_img -b "$TEST_IMG.base" 6G
>> +_make_test_img -b "$TEST_IMG.base" -F $IMGFMT 6G
>>
>
>My understanding of the intricacies of the qemu-iotest suite is not good
>enoug to be able to review this patch. Specifically $IMGFMT in this
>instance is also used in the '-f' switch of qemu-img in _make_test_img
>and I don't know if it's expected for the backing file to share the
>format.

IMGFMT is also used for the earlier creation of the base image and
I did not see it changing in any of the tests.

Jano
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 488 bytes
Desc: not available
URL: <http://listman.redhat.com/archives/libvir-list/attachments/20200227/5d733e5c/attachment-0001.sig>


More information about the libvir-list mailing list