Commit 52c8d629 authored by Fam Zheng's avatar Fam Zheng Committed by Kevin Wolf
Browse files

vmdk: refuse enabling zeroed grain with flat images



This is a header flag and we needs sparse for the header.

Signed-off-by: default avatarFam Zheng <famz@redhat.com>
Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
parent 4823970b
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -1664,6 +1664,10 @@ static int vmdk_create(const char *filename, QEMUOptionParameter *options,
        error_setg(errp, "Flat image can't have backing file");
        return -ENOTSUP;
    }
    if (flat && zeroed_grain) {
        error_setg(errp, "Flat image can't enable zeroed grain");
        return -ENOTSUP;
    }
    if (backing_file) {
        BlockDriverState *bs = bdrv_new("");
        ret = bdrv_open(bs, backing_file, NULL, 0, NULL, errp);
+4 −0
Original line number Diff line number Diff line
@@ -71,6 +71,10 @@ echo "=== Testing monolithicFlat creation and opening ==="
IMGOPTS="subformat=monolithicFlat" _make_test_img 2G
$QEMU_IMG info $TEST_IMG | _filter_testdir

echo
echo "=== Testing monolithicFlat with zeroed_grain ==="
IMGOPTS="subformat=monolithicFlat,zeroed_grain=on" _make_test_img 2G

# success, all done
echo "*** done"
rm -f $seq.full
+4 −0
Original line number Diff line number Diff line
@@ -22,4 +22,8 @@ image: TEST_DIR/t.vmdk
file format: vmdk
virtual size: 2.0G (2147483648 bytes)
disk size: 4.0K

=== Testing monolithicFlat with zeroed_grain ===
qemu-img: TEST_DIR/t.IMGFMT: Flat image can't enable zeroed grain
Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=2147483648
*** done