From 7d81c1413c9c9bdcc966453636e4ca7776b59861 Mon Sep 17 00:00:00 2001 From: Stefan Hajnoczi Date: Wed, 13 Feb 2013 16:53:43 +0100 Subject: block: refuse negative iops and bps values Negative I/O throttling iops and bps values do not make sense so reject them with an error message. Reviewed-by: Kevin Wolf Signed-off-by: Stefan Hajnoczi --- blockdev.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/blockdev.c b/blockdev.c index 9b0351343e..ba3759c849 100644 --- a/blockdev.c +++ b/blockdev.c @@ -274,6 +274,16 @@ static bool do_check_io_limits(BlockIOLimit *io_limits, Error **errp) return false; } + if (io_limits->bps[BLOCK_IO_LIMIT_TOTAL] < 0 || + io_limits->bps[BLOCK_IO_LIMIT_WRITE] < 0 || + io_limits->bps[BLOCK_IO_LIMIT_READ] < 0 || + io_limits->iops[BLOCK_IO_LIMIT_TOTAL] < 0 || + io_limits->iops[BLOCK_IO_LIMIT_WRITE] < 0 || + io_limits->iops[BLOCK_IO_LIMIT_READ] < 0) { + error_setg(errp, "bps and iops values must be 0 or greater"); + return false; + } + return true; } -- cgit v1.2.3