aboutsummaryrefslogtreecommitdiff
path: root/util/block-helpers.h
diff options
context:
space:
mode:
authorCoiby Xu <coiby.xu@gmail.com>2020-09-18 16:09:09 +0800
committerStefan Hajnoczi <stefanha@redhat.com>2020-10-23 13:42:16 +0100
commit5937835ac4cfb2f5e16bebf13b9ea42770c96785 (patch)
tree775e94555bee4c1f733b8c58000986c3f6439436 /util/block-helpers.h
parent70eb2c079cdfa835c70aec8887710b18092516a0 (diff)
block: move logical block size check function to a common utility function
Move the constants from hw/core/qdev-properties.c to util/block-helpers.h so that knowledge of the min/max values is Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com> Signed-off-by: Coiby Xu <coiby.xu@gmail.com> Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com> Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com> Acked-by: Eduardo Habkost <ehabkost@redhat.com> Message-id: 20200918080912.321299-5-coiby.xu@gmail.com Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Diffstat (limited to 'util/block-helpers.h')
-rw-r--r--util/block-helpers.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/util/block-helpers.h b/util/block-helpers.h
new file mode 100644
index 0000000000..b53295a529
--- /dev/null
+++ b/util/block-helpers.h
@@ -0,0 +1,19 @@
+#ifndef BLOCK_HELPERS_H
+#define BLOCK_HELPERS_H
+
+#include "qemu/units.h"
+
+/* lower limit is sector size */
+#define MIN_BLOCK_SIZE INT64_C(512)
+#define MIN_BLOCK_SIZE_STR "512 B"
+/*
+ * 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"
+
+void check_block_size(const char *id, const char *name, int64_t value,
+ Error **errp);
+
+#endif /* BLOCK_HELPERS_H */