On Mon, Nov 18, 2024 at 19:24:09 +0530, Harikumar R wrote:
From: Chun Feng Wu <danielwuwy(a)163.com>
Introduce schema for defining '<throttlegroups>' element which
configures throttling groups which can be configured for multiple
disks.
* Refactor "diskIoTune" to extract common schema "iotune"
* Add new elements '<throttlegroups>'
* <ThrottleGroups> contains <ThrottleGroup> defintion, which references
"iotune"
Signed-off-by: Chun Feng Wu <danielwuwy(a)163.com>
---
docs/formatdomain.rst | 26 +++
src/conf/schemas/domaincommon.rng | 274 ++++++++++++++++--------------
2 files changed, 174 insertions(+), 126 deletions(-)
diff --git a/docs/formatdomain.rst b/docs/formatdomain.rst
index f0b79d5f8d..5b7f18b2f0 100644
--- a/docs/formatdomain.rst
+++ b/docs/formatdomain.rst
@@ -1964,6 +1964,32 @@ advertisements to the guest OS. (NB: Only qemu driver support)
the guest OS itself can choose to circumvent the unavailability of the sleep
states (e.g. S4 by turning off completely).
+Disk Throttle Group Management
+------------------------------
+
+:since:`Since 10.7.0` it is possible to create multiple named throttle groups
This will need to become 11.0.0
+and then reference them within ``throttlefilters``(sub-element of
``disk`` element)
+to form filter chain in QEMU for specific disk. The limits(throttlegroups) are
+shared within domain, hence the same group can be referenced by different filters.
+
+::
+
+ <domain>
+ ...
+ <throttlegroups>
I wanted to suggest renaming this to 'diskthrottlegroups' but I guess
this name will not collide in the future.
+ <throttlegroup>
+ <group_name>limit0</group_name>
+ <total_bytes_sec>10000000</total_bytes_sec>
+ <read_iops_sec>400000</read_iops_sec>
+ <write_iops_sec>100000</write_iops_sec>
+ </throttlegroup>
+ </throttlegroups>
+ ...
+ </domain>
+
+``throttlegroup``
+ It has the same sub-elements as ``iotune`` (See `Hard drives, floppy disks,
CDROMs`_),
+ The difference is that <group_name> is required.
With the changes above:
Reviewed-by: Peter Krempa <pkrempa(a)redhat.com>