summaryrefslogtreecommitdiff
path: root/include/block
diff options
context:
space:
mode:
authorPeter Lieven <pl@kamp.de>2015-02-06 11:54:11 +0100
committerKevin Wolf <kwolf@redhat.com>2015-02-06 17:24:22 +0100
commit75af1f34cd5b07c3c7fcf86dfc99a42de48a600d (patch)
tree701e882e64c3023a6e6b9fbd1a9547e5f2d8c5f9 /include/block
parent1ce52846d3ce0e4b58caebcae84719bef6401fbb (diff)
downloadqemu-75af1f34cd5b07c3c7fcf86dfc99a42de48a600d.zip
block: introduce BDRV_REQUEST_MAX_SECTORS
we check and adjust request sizes at several places with sometimes inconsistent checks or default values: INT_MAX INT_MAX >> BDRV_SECTOR_BITS UINT_MAX >> BDRV_SECTOR_BITS SIZE_MAX >> BDRV_SECTOR_BITS This patches introdocues a macro for the maximal allowed sectors per request and uses it at several places. Signed-off-by: Peter Lieven <pl@kamp.de> Reviewed-by: Denis V. Lunev <den@openvz.org> Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Diffstat (limited to 'include/block')
-rw-r--r--include/block/block.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/include/block/block.h b/include/block/block.h
index 3082d2b80e..25a6d62d1b 100644
--- a/include/block/block.h
+++ b/include/block/block.h
@@ -83,6 +83,9 @@ typedef enum {
#define BDRV_SECTOR_SIZE (1ULL << BDRV_SECTOR_BITS)
#define BDRV_SECTOR_MASK ~(BDRV_SECTOR_SIZE - 1)
+#define BDRV_REQUEST_MAX_SECTORS MIN(SIZE_MAX >> BDRV_SECTOR_BITS, \
+ INT_MAX >> BDRV_SECTOR_BITS)
+
/*
* Allocation status flags
* BDRV_BLOCK_DATA: data is read from bs->file or another file