[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v3 13/14] Revert "block: Forbid I/O throttling on no
From: |
Kevin Wolf |
Subject: |
[Qemu-devel] [PATCH v3 13/14] Revert "block: Forbid I/O throttling on nodes with multiple parents for 2.6" |
Date: |
Wed, 11 May 2016 15:24:24 +0200 |
This reverts commit 76b223200ef4fb09dd87f0e213159795eb68e7a5.
Now that I/O throttling is fully done on the BlockBackend level, there
is no reason any more to block I/O throttling for nodes with multiple
parents as the parents don't influence each other any more.
Conflicts:
block.c
Signed-off-by: Kevin Wolf <address@hidden>
Reviewed-by: Alberto Garcia <address@hidden>
---
block.c | 6 ------
blockdev.c | 7 -------
2 files changed, 13 deletions(-)
diff --git a/block.c b/block.c
index b2f4a6b..4a143d5 100644
--- a/block.c
+++ b/block.c
@@ -1522,12 +1522,6 @@ static int bdrv_open_inherit(BlockDriverState **pbs,
const char *filename,
return -ENODEV;
}
- if (bs->blk && blk_get_public(bs->blk)->throttle_state) {
- error_setg(errp, "Cannot reference an existing block device for "
- "which I/O throttling is enabled");
- return -EINVAL;
- }
-
bdrv_ref(bs);
*pbs = bs;
return 0;
diff --git a/blockdev.c b/blockdev.c
index 6870d66..fe20754 100644
--- a/blockdev.c
+++ b/blockdev.c
@@ -2652,13 +2652,6 @@ void qmp_block_set_io_throttle(const char *device,
int64_t bps, int64_t bps_rd,
goto out;
}
- /* The BlockBackend must be the only parent */
- assert(QLIST_FIRST(&bs->parents));
- if (QLIST_NEXT(QLIST_FIRST(&bs->parents), next_parent)) {
- error_setg(errp, "Cannot throttle device with multiple parents");
- goto out;
- }
-
throttle_config_init(&cfg);
cfg.buckets[THROTTLE_BPS_TOTAL].avg = bps;
cfg.buckets[THROTTLE_BPS_READ].avg = bps_rd;
--
1.8.3.1
- [Qemu-devel] [PATCH v3 01/14] block: Make sure throttled BDSes always have a BB, (continued)
- [Qemu-devel] [PATCH v3 01/14] block: Make sure throttled BDSes always have a BB, Kevin Wolf, 2016/05/11
- [Qemu-devel] [PATCH v3 07/14] block: Move I/O throttling configuration functions to BlockBackend, Kevin Wolf, 2016/05/11
- [Qemu-devel] [PATCH v3 02/14] block: Introduce BlockBackendPublic, Kevin Wolf, 2016/05/11
- [Qemu-devel] [PATCH v3 06/14] block: Move actual I/O throttling to BlockBackend, Kevin Wolf, 2016/05/11
- [Qemu-devel] [PATCH v3 03/14] block: throttle-groups: Use BlockBackend pointers internally, Kevin Wolf, 2016/05/11
- [Qemu-devel] [PATCH v3 05/14] block: Move throttling fields from BDS to BB, Kevin Wolf, 2016/05/11
- [Qemu-devel] [PATCH v3 10/14] block/io: Quiesce parents between drained_begin/end, Kevin Wolf, 2016/05/11
- [Qemu-devel] [PATCH v3 11/14] block: Decouple throttling from BlockDriverState, Kevin Wolf, 2016/05/11
- [Qemu-devel] [PATCH v3 12/14] block: Remove bdrv_move_feature_fields(), Kevin Wolf, 2016/05/11
- [Qemu-devel] [PATCH v3 13/14] Revert "block: Forbid I/O throttling on nodes with multiple parents for 2.6",
Kevin Wolf <=
- [Qemu-devel] [PATCH v3 14/14] block: Don't check throttled reqs in bdrv_requests_pending(), Kevin Wolf, 2016/05/11
- [Qemu-devel] [PATCH v3 09/14] block: Drain throttling queue with BdrvChild callback, Kevin Wolf, 2016/05/11
- [Qemu-devel] [PATCH v3 08/14] block: Introduce BdrvChild.opaque, Kevin Wolf, 2016/05/11
- Re: [Qemu-devel] [PATCH v3 00/14] block: Move I/O throttling to BlockBackend, Stefan Hajnoczi, 2016/05/16