Alberto Garcia 48bf7ea81a block: Check for inserted BlockDriverState in blk_io_limits_disable()
When you set I/O limits using block_set_io_throttle or the command
line throttling.* options they are kept in the BlockBackend regardless
of whether a BlockDriverState is attached to the backend or not.

Therefore when removing the limits using blk_io_limits_disable() we
need to check if there's a BDS before attempting to drain it, else it
will crash QEMU. This can be reproduced very easily using HMP:

     (qemu) drive_add 0 if=none,throttling.iops-total=5000
     (qemu) drive_del none0

Reported-by: sochin jiang <sochin.jiang@huawei.com>
Signed-off-by: Alberto Garcia <berto@igalia.com>
Reviewed-by: Max Reitz <mreitz@redhat.com>
Message-id: 0d3a67ce8d948bb33e08672564714dcfb76a3d8c.1510339534.git.berto@igalia.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
2017-11-13 14:38:46 +00:00
..
2017-10-26 14:45:57 +02:00
2017-10-06 16:28:58 +02:00
2016-10-07 14:14:06 +02:00
2017-08-31 12:29:07 +02:00
2016-10-07 14:14:06 +02:00
2017-08-08 15:19:16 +02:00
2017-09-26 15:00:32 +02:00
2016-06-07 18:19:24 +03:00
2017-07-17 11:34:11 +08:00
2017-09-05 14:14:33 +01:00
2017-07-17 11:28:15 +08:00
2016-09-23 11:42:52 +08:00
2017-08-31 12:29:07 +02:00
2017-08-31 12:29:07 +02:00