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>
This commit is contained in:
Roman Kagan 2020-05-29 01:55:16 +03:00 committed by Kevin Wolf
parent 031ffd9a61
commit 6510ba1c0e

View File

@ -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)