[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PULL 14/22] block/vhdx: Support vhdx image only with 512 bytes logical
From: |
Max Reitz |
Subject: |
[PULL 14/22] block/vhdx: Support vhdx image only with 512 bytes logical sector size |
Date: |
Tue, 15 Sep 2020 12:46:19 +0200 |
From: Swapnil Ingle <swapnil.ingle@nutanix.com>
block/vhdx uses qemu block layer where sector size is always 512 bytes.
This may have issues with 4K logical sector sized vhdx image.
For e.g qemu-img convert on such images fails with following assert:
$qemu-img convert -f vhdx -O raw 4KTest1.vhdx test.raw
qemu-img: util/iov.c:388: qiov_slice: Assertion `offset + len <=
qiov->size' failed.
Aborted
This patch adds an check to return ENOTSUP for vhdx images which
have logical sector size other than 512 bytes.
Signed-off-by: Swapnil Ingle <swapnil.ingle@nutanix.com>
Message-Id: <1596794594-44531-1-git-send-email-swapnil.ingle@nutanix.com>
Signed-off-by: Max Reitz <mreitz@redhat.com>
---
block/vhdx.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/block/vhdx.c b/block/vhdx.c
index 791eb90263..356ec4c455 100644
--- a/block/vhdx.c
+++ b/block/vhdx.c
@@ -816,9 +816,9 @@ static int vhdx_parse_metadata(BlockDriverState *bs,
BDRVVHDXState *s)
goto exit;
}
- /* only 2 supported sector sizes */
- if (s->logical_sector_size != 512 && s->logical_sector_size != 4096) {
- ret = -EINVAL;
+ /* Currently we only support 512 */
+ if (s->logical_sector_size != 512) {
+ ret = -ENOTSUP;
goto exit;
}
--
2.26.2
- [PULL 03/22] qemu-iotests: Support varargs syntax in FilePaths, (continued)
- [PULL 03/22] qemu-iotests: Support varargs syntax in FilePaths, Max Reitz, 2020/09/15
- [PULL 04/22] qemu-iotests: Merge FilePaths and FilePath, Max Reitz, 2020/09/15
- [PULL 05/22] qemu-iotests: Simplify FilePath __init__, Max Reitz, 2020/09/15
- [PULL 07/22] qemu-img: avoid unaligned read requests during convert, Max Reitz, 2020/09/15
- [PULL 06/22] block/quorum.c: stable children names, Max Reitz, 2020/09/15
- [PULL 08/22] qcow2: Use macros for the L1, refcount and bitmap table entry sizes, Max Reitz, 2020/09/15
- [PULL 09/22] qcow2: Fix removal of list members from BDRVQcow2State.cluster_allocs, Max Reitz, 2020/09/15
- [PULL 11/22] qcow2: Rewrite the documentation of qcow2_alloc_cluster_offset(), Max Reitz, 2020/09/15
- [PULL 10/22] qcow2: Don't check nb_clusters when removing l2meta from the list, Max Reitz, 2020/09/15
- [PULL 13/22] iotests: Skip test_stream_parallel in test 030 when doing "make check", Max Reitz, 2020/09/15
- [PULL 14/22] block/vhdx: Support vhdx image only with 512 bytes logical sector size,
Max Reitz <=
- [PULL 12/22] qemu-img: Explicit number replaced by a constant, Max Reitz, 2020/09/15
- [PULL 17/22] qcow2: Return the original error code in qcow2_co_pwrite_zeroes(), Max Reitz, 2020/09/15
- [PULL 16/22] qcow2: Make qcow2_free_any_clusters() free only one cluster, Max Reitz, 2020/09/15
- [PULL 15/22] qcow2: Handle QCowL2Meta on error in preallocate_co(), Max Reitz, 2020/09/15
- [PULL 20/22] qcow2: Make preallocate_co() resize the image to the correct size, Max Reitz, 2020/09/15
- [PULL 18/22] block/rbd: remove runtime_opts, Max Reitz, 2020/09/15
- [PULL 19/22] block/qcow: remove runtime opts, Max Reitz, 2020/09/15
- [PULL 21/22] qcow2: Convert qcow2_alloc_cluster_offset() into qcow2_alloc_host_offset(), Max Reitz, 2020/09/15
- [PULL 22/22] block/rbd: add 'namespace' to qemu_rbd_strong_runtime_opts[], Max Reitz, 2020/09/15
- Re: [PULL 00/22] Block patches, Peter Maydell, 2020/09/15