summaryrefslogtreecommitdiffstats
path: root/hw/core/qdev-properties.c
diff options
context:
space:
mode:
authorRoman Kagan2020-05-29 00:55:16 +0200
committerKevin Wolf2020-06-17 14:53:40 +0200
commit6510ba1c0ebd1503097ac831956505adf5ec29d2 (patch)
tree246d599dd12827fe79439f48da2015c92d66c0f8 /hw/core/qdev-properties.c
parentqdev-properties: add getter for size32 and blocksize (diff)
downloadqemu-6510ba1c0ebd1503097ac831956505adf5ec29d2.tar.gz
qemu-6510ba1c0ebd1503097ac831956505adf5ec29d2.tar.xz
qemu-6510ba1c0ebd1503097ac831956505adf5ec29d2.zip
block: lift blocksize property limit to 2 MiB
Logical and physical block sizes in QEMU are limited to 32 KiB. This appears unnecessarily tight, and we've seen bigger block sizes handy at times. Lift the limitation up to 2 MiB which appears to be good enough for everybody, and matches the qcow2 cluster size limit. Signed-off-by: Roman Kagan <rvkagan@yandex-team.ru> Reviewed-by: Eric Blake <eblake@redhat.com> Message-Id: <20200528225516.1676602-9-rvkagan@yandex-team.ru> Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Diffstat (limited to 'hw/core/qdev-properties.c')
-rw-r--r--hw/core/qdev-properties.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/hw/core/qdev-properties.c b/hw/core/qdev-properties.c
index 63d48db70c..ead35d7ffd 100644
--- a/hw/core/qdev-properties.c
+++ b/hw/core/qdev-properties.c
@@ -784,9 +784,12 @@ const PropertyInfo qdev_prop_size32 = {
/* lower limit is sector size */
#define MIN_BLOCK_SIZE 512
#define MIN_BLOCK_SIZE_STR "512 B"
-/* upper limit is the max power of 2 that fits in uint16_t */
-#define MAX_BLOCK_SIZE (32 * KiB)
-#define MAX_BLOCK_SIZE_STR "32 KiB"
+/*
+ * upper limit is arbitrary, 2 MiB looks sufficient for all sensible uses, and
+ * matches qcow2 cluster size limit
+ */
+#define MAX_BLOCK_SIZE (2 * MiB)
+#define MAX_BLOCK_SIZE_STR "2 MiB"
static void set_blocksize(Object *obj, Visitor *v, const char *name,
void *opaque, Error **errp)