qemu-e2k/block
Alberto Garcia a0d64a61db throttle: Use bs->throttle_state instead of bs->io_limits_enabled
There are two ways to check for I/O limits in a BlockDriverState:

- bs->throttle_state: if this pointer is not NULL, it means that this
  BDS is member of a throttling group, its ThrottleTimers structure
  has been initialized and its I/O limits are ready to be applied.

- bs->io_limits_enabled: if true it means that the throttle_state
  pointer is valid _and_ the limits are currently enabled.

The latter is used in several places to check whether a BDS has I/O
limits configured, but what it really checks is whether requests
are being throttled or not. For example, io_limits_enabled can be
temporarily set to false in cases like bdrv_read_unthrottled() without
otherwise touching the throtting configuration of that BDS.

This patch replaces bs->io_limits_enabled with bs->throttle_state in
all cases where what we really want to check is the existence of I/O
limits, not whether they are currently enabled or not.

Signed-off-by: Alberto Garcia <berto@igalia.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
2015-11-11 16:25:47 +01:00
..
Makefile.objs block: convert quorum blockdrv to use crypto APIs 2015-07-08 13:11:01 +02:00
accounting.c block: Remove wr_highest_sector from BlockAcctStats 2015-10-23 18:18:23 +02:00
archipelago.c block: remove superfluous '\n' around error_report/error_setg 2015-03-10 08:15:33 +03:00
backup.c block: Move I/O status and error actions into BB 2015-10-23 18:18:23 +02:00
blkdebug.c blkdebug: Don't confuse image as backing file 2015-10-16 15:35:48 +02:00
blkverify.c blkverify: Fix BDS leak in .bdrv_open error path 2015-10-16 15:34:30 +02:00
block-backend.c block: Inquire tray state before tray-moved events 2015-11-11 16:22:47 +01:00
bochs.c block: Convert bs->file to BdrvChild 2015-10-16 15:34:29 +02:00
cloop.c block: Convert bs->file to BdrvChild 2015-10-16 15:34:29 +02:00
commit.c commit: reopen overlay_bs before base 2015-11-11 16:25:47 +01:00
curl.c aio: Add "is_external" flag for event handlers 2015-10-23 18:18:23 +02:00
dmg.c block: Convert bs->file to BdrvChild 2015-10-16 15:34:29 +02:00
gluster.c block: don't convert file size to sector size 2014-09-12 15:43:06 +02:00
io.c block: Consider all child nodes in bdrv_requests_pending() 2015-10-29 17:59:27 +00:00
iscsi.c iscsi: Translate scsi sense into error code 2015-11-05 14:42:19 +01:00
linux-aio.c aio: Add "is_external" flag for event handlers 2015-10-23 18:18:23 +02:00
mirror.c block: Move I/O status and error actions into BB 2015-10-23 18:18:23 +02:00
nbd-client.c aio: Add "is_external" flag for event handlers 2015-10-23 18:18:23 +02:00
nbd-client.h nbd: Set block size to BDRV_SECTOR_SIZE 2015-03-18 12:07:01 +01:00
nbd.c block: Convert to new qapi union layout 2015-11-02 08:30:27 +01:00
nfs.c aio: Add "is_external" flag for event handlers 2015-10-23 18:18:23 +02:00
null.c block/null: Support reopen 2015-04-28 15:36:09 +02:00
parallels.c block: Convert bs->file to BdrvChild 2015-10-16 15:34:29 +02:00
qapi.c throttle: Use bs->throttle_state instead of bs->io_limits_enabled 2015-11-11 16:25:47 +01:00
qcow.c block: Convert bs->backing_hd to BdrvChild 2015-10-16 15:34:29 +02:00
qcow2-cache.c block: Convert bs->file to BdrvChild 2015-10-16 15:34:29 +02:00
qcow2-cluster.c block: Convert bs->backing_hd to BdrvChild 2015-10-16 15:34:29 +02:00
qcow2-refcount.c qcow2: avoid misaligned 64bit bswap 2015-11-11 16:25:47 +01:00
qcow2-snapshot.c block: Convert bs->file to BdrvChild 2015-10-16 15:34:29 +02:00
qcow2.c block: Convert to new qapi union layout 2015-11-02 08:30:27 +01:00
qcow2.h coroutine: move into libqemuutil.a library 2015-10-20 14:59:04 +01:00
qed-check.c block: Use g_new() & friends to avoid multiplying sizes 2014-08-20 11:51:28 +02:00
qed-cluster.c Use glib memory allocation and free functions 2011-08-20 23:01:08 -05:00
qed-gencb.c block: Rename BlockDriverCompletionFunc to BlockCompletionFunc 2014-10-20 13:41:27 +02:00
qed-l2-cache.c qed: do not evict in-use L2 table cache entries 2012-03-12 15:14:06 +01:00
qed-table.c block: Convert bs->file to BdrvChild 2015-10-16 15:34:29 +02:00
qed.c block: Remove bdrv_swap() 2015-10-16 15:34:30 +02:00
qed.h qed: Really remove unused field QEDAIOCB.finished 2015-02-06 17:24:21 +01:00
quorum.c quorum: Convert to BdrvChild 2015-10-16 15:34:29 +02:00
raw-aio.h linux-aio: drop return code from laio_io_unplug and ioq_submit 2014-12-12 16:57:55 +00:00
raw-posix.c block: Make bdrv_is_inserted() return a bool 2015-10-23 18:18:22 +02:00
raw-win32.c block: switch from g_slice allocator to malloc 2015-10-12 11:17:45 +01:00
raw_bsd.c block/raw_bsd: Drop raw_is_inserted() 2015-10-23 18:18:23 +02:00
rbd.c rbd: fix ceph settings precedence 2015-07-14 17:15:23 +02:00
sheepdog.c aio: Add "is_external" flag for event handlers 2015-10-23 18:18:23 +02:00
snapshot.c block: Convert bs->file to BdrvChild 2015-10-16 15:34:29 +02:00
ssh.c aio: Add "is_external" flag for event handlers 2015-10-23 18:18:23 +02:00
stream.c block: Move I/O status and error actions into BB 2015-10-23 18:18:23 +02:00
throttle-groups.c throttle: Check for pending requests in throttle_group_unregister_bs() 2015-11-11 16:25:47 +01:00
vdi.c coroutine: move into libqemuutil.a library 2015-10-20 14:59:04 +01:00
vhdx-endian.c block: VHDX endian fixes 2014-08-15 15:07:14 +02:00
vhdx-log.c block: Convert bs->file to BdrvChild 2015-10-16 15:34:29 +02:00
vhdx.c block: Convert bs->file to BdrvChild 2015-10-16 15:34:29 +02:00
vhdx.h block: vhdx - update PAYLOAD_BLOCK_UNMAPPED value to match 1.00 spec 2014-12-12 15:42:22 +00:00
vmdk.c block: Convert to new qapi union layout 2015-11-02 08:30:27 +01:00
vpc.c block: Convert bs->file to BdrvChild 2015-10-16 15:34:29 +02:00
vvfat.c block: Remove bdrv_swap() 2015-10-16 15:34:30 +02:00
win32-aio.c aio: Add "is_external" flag for event handlers 2015-10-23 18:18:23 +02:00
write-threshold.c coroutine: move into libqemuutil.a library 2015-10-20 14:59:04 +01:00