[PATCH v7 00/18] *** [PATCH v7 00/18] qemu: block: Support block disk along with throttle filters ***

Harikumar Rajkumar posted 18 patches 10 months, 1 week ago
Failed in applying to current master (apply log)
docs/formatdomain.rst                         |  47 ++
docs/manpages/virsh.rst                       | 137 +++-
include/libvirt/libvirt-domain.h              |  14 +
src/conf/domain_conf.c                        | 407 ++++++++++
src/conf/domain_conf.h                        |  47 ++
src/conf/domain_validate.c                    | 118 ++-
src/conf/schemas/domaincommon.rng             | 293 ++++---
src/conf/virconftypes.h                       |   4 +
src/driver-hypervisor.h                       |  14 +
src/libvirt-domain.c                          | 122 +++
src/libvirt_private.syms                      |   8 +
src/libvirt_public.syms                       |   6 +
src/qemu/qemu_block.c                         | 136 ++++
src/qemu/qemu_block.h                         |  49 ++
src/qemu/qemu_command.c                       | 180 +++++
src/qemu/qemu_command.h                       |   6 +
src/qemu/qemu_domain.c                        |  77 +-
src/qemu/qemu_driver.c                        | 486 +++++++++---
src/qemu/qemu_hotplug.c                       |  29 +
src/qemu/qemu_monitor.c                       |  21 +
src/qemu/qemu_monitor.h                       |   9 +
src/qemu/qemu_monitor_json.c                  | 129 +++
src/qemu/qemu_monitor_json.h                  |  14 +
src/remote/remote_daemon_dispatch.c           | 105 +++
src/remote/remote_driver.c                    |   3 +
src/remote/remote_protocol.x                  |  50 +-
src/remote_protocol-structs                   |  28 +
src/test/test_driver.c                        | 367 ++++++---
tests/qemumonitorjsontest.c                   |  86 ++
.../throttlefilter-in.xml                     | 392 ++++++++++
.../throttlefilter-out.xml                    | 393 ++++++++++
tests/qemuxmlactivetest.c                     |   1 +
.../throttlefilter-invalid.x86_64-latest.err  |   1 +
.../throttlefilter-invalid.xml                |  89 +++
.../throttlefilter.x86_64-latest.args         |  55 ++
.../throttlefilter.x86_64-latest.xml          | 105 +++
tests/qemuxmlconfdata/throttlefilter.xml      |  95 +++
tests/qemuxmlconftest.c                       |   2 +
tools/virsh-completer-domain.c                |  82 ++
tools/virsh-completer-domain.h                |  16 +
tools/virsh-domain.c                          | 736 ++++++++++++++----
41 files changed, 4429 insertions(+), 530 deletions(-)
create mode 100644 tests/qemustatusxml2xmldata/throttlefilter-in.xml
create mode 100644 tests/qemustatusxml2xmldata/throttlefilter-out.xml
create mode 100644 tests/qemuxmlconfdata/throttlefilter-invalid.x86_64-latest.err
create mode 100644 tests/qemuxmlconfdata/throttlefilter-invalid.xml
create mode 100644 tests/qemuxmlconfdata/throttlefilter.x86_64-latest.args
create mode 100644 tests/qemuxmlconfdata/throttlefilter.x86_64-latest.xml
create mode 100644 tests/qemuxmlconfdata/throttlefilter.xml
[PATCH v7 00/18] *** [PATCH v7 00/18] qemu: block: Support block disk along with throttle filters ***
Posted by Harikumar Rajkumar 10 months, 1 week ago
*** Support block disk along with throttle filters ***

Harikumar Rajkumar (18):
  schema: Add new domain elements to support multiple throttle groups
  schema: Add new domain elements to support multiple throttle filters
  config: Introduce ThrottleGroup and corresponding XML parsing
  config: Introduce ThrottleFilter and corresponding XML parsing
  qemu: monitor: Add support for ThrottleGroup operations
  tests: Test qemuMonitorJSONGetThrottleGroup and
    qemuMonitorJSONUpdateThrottleGroup
  remote: New APIs for ThrottleGroup lifecycle management
  qemu: Refactor qemuDomainSetBlockIoTune to extract common methods
  qemu: Implement qemu driver for throttle API
  qemu: helper: throttle filter nodename and preparation processing
  qemu: block: Support block disk along with throttle filters
  config: validate: Verify iotune, throttle group and filter
  qemuxmlconftest: Add 'throttlefilter' tests
  qemustatusxml2xmldata: Add 'throttlefilter' tests
  test_driver: Test throttle group lifecycle APIs
  virsh: Refactor iotune options for re-use
  virsh: Add support for throttle group operations
  virsh: Add option throttle-groups to attach_disk

 docs/formatdomain.rst                         |  47 ++
 docs/manpages/virsh.rst                       | 137 +++-
 include/libvirt/libvirt-domain.h              |  14 +
 src/conf/domain_conf.c                        | 407 ++++++++++
 src/conf/domain_conf.h                        |  47 ++
 src/conf/domain_validate.c                    | 118 ++-
 src/conf/schemas/domaincommon.rng             | 293 ++++---
 src/conf/virconftypes.h                       |   4 +
 src/driver-hypervisor.h                       |  14 +
 src/libvirt-domain.c                          | 122 +++
 src/libvirt_private.syms                      |   8 +
 src/libvirt_public.syms                       |   6 +
 src/qemu/qemu_block.c                         | 136 ++++
 src/qemu/qemu_block.h                         |  49 ++
 src/qemu/qemu_command.c                       | 180 +++++
 src/qemu/qemu_command.h                       |   6 +
 src/qemu/qemu_domain.c                        |  77 +-
 src/qemu/qemu_driver.c                        | 486 +++++++++---
 src/qemu/qemu_hotplug.c                       |  29 +
 src/qemu/qemu_monitor.c                       |  21 +
 src/qemu/qemu_monitor.h                       |   9 +
 src/qemu/qemu_monitor_json.c                  | 129 +++
 src/qemu/qemu_monitor_json.h                  |  14 +
 src/remote/remote_daemon_dispatch.c           | 105 +++
 src/remote/remote_driver.c                    |   3 +
 src/remote/remote_protocol.x                  |  50 +-
 src/remote_protocol-structs                   |  28 +
 src/test/test_driver.c                        | 367 ++++++---
 tests/qemumonitorjsontest.c                   |  86 ++
 .../throttlefilter-in.xml                     | 392 ++++++++++
 .../throttlefilter-out.xml                    | 393 ++++++++++
 tests/qemuxmlactivetest.c                     |   1 +
 .../throttlefilter-invalid.x86_64-latest.err  |   1 +
 .../throttlefilter-invalid.xml                |  89 +++
 .../throttlefilter.x86_64-latest.args         |  55 ++
 .../throttlefilter.x86_64-latest.xml          | 105 +++
 tests/qemuxmlconfdata/throttlefilter.xml      |  95 +++
 tests/qemuxmlconftest.c                       |   2 +
 tools/virsh-completer-domain.c                |  82 ++
 tools/virsh-completer-domain.h                |  16 +
 tools/virsh-domain.c                          | 736 ++++++++++++++----
 41 files changed, 4429 insertions(+), 530 deletions(-)
 create mode 100644 tests/qemustatusxml2xmldata/throttlefilter-in.xml
 create mode 100644 tests/qemustatusxml2xmldata/throttlefilter-out.xml
 create mode 100644 tests/qemuxmlconfdata/throttlefilter-invalid.x86_64-latest.err
 create mode 100644 tests/qemuxmlconfdata/throttlefilter-invalid.xml
 create mode 100644 tests/qemuxmlconfdata/throttlefilter.x86_64-latest.args
 create mode 100644 tests/qemuxmlconfdata/throttlefilter.x86_64-latest.xml
 create mode 100644 tests/qemuxmlconfdata/throttlefilter.xml

-- 
2.39.5 (Apple Git-154)
Re: [PATCH v7 00/18] *** [PATCH v7 00/18] qemu: block: Support block disk along with throttle filters ***
Posted by Daniel P. Berrangé 10 months, 1 week ago
On Wed, Feb 12, 2025 at 04:05:19PM +0530, Harikumar Rajkumar wrote:
> *** Support block disk along with throttle filters ***

It is helpful to provide a slightly more detailed summary of
what the patch series is doing when posting such a large
series.

Also when posting repeated new versions of a series, can you
try to provide a bullet point summary of the important changes
vs the previous versions in the cover letter, so reviewers
have some guidance of what to look out for.

> 
> Harikumar Rajkumar (18):
>   schema: Add new domain elements to support multiple throttle groups
>   schema: Add new domain elements to support multiple throttle filters
>   config: Introduce ThrottleGroup and corresponding XML parsing
>   config: Introduce ThrottleFilter and corresponding XML parsing
>   qemu: monitor: Add support for ThrottleGroup operations
>   tests: Test qemuMonitorJSONGetThrottleGroup and
>     qemuMonitorJSONUpdateThrottleGroup
>   remote: New APIs for ThrottleGroup lifecycle management
>   qemu: Refactor qemuDomainSetBlockIoTune to extract common methods
>   qemu: Implement qemu driver for throttle API
>   qemu: helper: throttle filter nodename and preparation processing
>   qemu: block: Support block disk along with throttle filters
>   config: validate: Verify iotune, throttle group and filter
>   qemuxmlconftest: Add 'throttlefilter' tests
>   qemustatusxml2xmldata: Add 'throttlefilter' tests
>   test_driver: Test throttle group lifecycle APIs
>   virsh: Refactor iotune options for re-use
>   virsh: Add support for throttle group operations
>   virsh: Add option throttle-groups to attach_disk
> 
>  docs/formatdomain.rst                         |  47 ++
>  docs/manpages/virsh.rst                       | 137 +++-
>  include/libvirt/libvirt-domain.h              |  14 +
>  src/conf/domain_conf.c                        | 407 ++++++++++
>  src/conf/domain_conf.h                        |  47 ++
>  src/conf/domain_validate.c                    | 118 ++-
>  src/conf/schemas/domaincommon.rng             | 293 ++++---
>  src/conf/virconftypes.h                       |   4 +
>  src/driver-hypervisor.h                       |  14 +
>  src/libvirt-domain.c                          | 122 +++
>  src/libvirt_private.syms                      |   8 +
>  src/libvirt_public.syms                       |   6 +
>  src/qemu/qemu_block.c                         | 136 ++++
>  src/qemu/qemu_block.h                         |  49 ++
>  src/qemu/qemu_command.c                       | 180 +++++
>  src/qemu/qemu_command.h                       |   6 +
>  src/qemu/qemu_domain.c                        |  77 +-
>  src/qemu/qemu_driver.c                        | 486 +++++++++---
>  src/qemu/qemu_hotplug.c                       |  29 +
>  src/qemu/qemu_monitor.c                       |  21 +
>  src/qemu/qemu_monitor.h                       |   9 +
>  src/qemu/qemu_monitor_json.c                  | 129 +++
>  src/qemu/qemu_monitor_json.h                  |  14 +
>  src/remote/remote_daemon_dispatch.c           | 105 +++
>  src/remote/remote_driver.c                    |   3 +
>  src/remote/remote_protocol.x                  |  50 +-
>  src/remote_protocol-structs                   |  28 +
>  src/test/test_driver.c                        | 367 ++++++---
>  tests/qemumonitorjsontest.c                   |  86 ++
>  .../throttlefilter-in.xml                     | 392 ++++++++++
>  .../throttlefilter-out.xml                    | 393 ++++++++++
>  tests/qemuxmlactivetest.c                     |   1 +
>  .../throttlefilter-invalid.x86_64-latest.err  |   1 +
>  .../throttlefilter-invalid.xml                |  89 +++
>  .../throttlefilter.x86_64-latest.args         |  55 ++
>  .../throttlefilter.x86_64-latest.xml          | 105 +++
>  tests/qemuxmlconfdata/throttlefilter.xml      |  95 +++
>  tests/qemuxmlconftest.c                       |   2 +
>  tools/virsh-completer-domain.c                |  82 ++
>  tools/virsh-completer-domain.h                |  16 +
>  tools/virsh-domain.c                          | 736 ++++++++++++++----
>  41 files changed, 4429 insertions(+), 530 deletions(-)
>  create mode 100644 tests/qemustatusxml2xmldata/throttlefilter-in.xml
>  create mode 100644 tests/qemustatusxml2xmldata/throttlefilter-out.xml
>  create mode 100644 tests/qemuxmlconfdata/throttlefilter-invalid.x86_64-latest.err
>  create mode 100644 tests/qemuxmlconfdata/throttlefilter-invalid.xml
>  create mode 100644 tests/qemuxmlconfdata/throttlefilter.x86_64-latest.args
>  create mode 100644 tests/qemuxmlconfdata/throttlefilter.x86_64-latest.xml
>  create mode 100644 tests/qemuxmlconfdata/throttlefilter.xml
> 
> -- 
> 2.39.5 (Apple Git-154)
> 

With regards,
Daniel
-- 
|: https://berrange.com      -o-    https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org         -o-            https://fstop138.berrange.com :|
|: https://entangle-photo.org    -o-    https://www.instagram.com/dberrange :|
Re: [PATCH v7 00/18] *** [PATCH v7 00/18] qemu: block: Support block disk along with throttle filters ***
Posted by Harikumar Rajkumar 10 months, 1 week ago
> On Wed, Feb 12, 2025 at 04:05:19PM +0530, Harikumar Rajkumar wrote:
> 
> It is helpful to provide a slightly more detailed summary of
> what the patch series is doing when posting such a large
> series.
> 
> Also when posting repeated new versions of a series, can you
> try to provide a bullet point summary of the important changes
> vs the previous versions in the cover letter, so reviewers
> have some guidance of what to look out for.

This patch version 7, addresses the feedback provided on patch version 5 (referenced https://lists.libvirt.org/archives/list/devel@lists.libvirt.org/message/VUW7AKTYMM2S7EEVQLY3DN7YE7ON5NQZ/), which includes the following modifications:

- Reimplementation of the "get throttle group" to query from the XML.
- Allowing the SET API to reset the throttle group config fields to its default in QEMU.
- Updating the version to 11.1.0.
- Implementing various coding style changes as suggested.
- Removal of unnecessary comments.
Re: [PATCH v7 00/18] *** [PATCH v7 00/18] qemu: block: Support block disk along with throttle filters ***
Posted by Harikumar Rajkumar 10 months, 1 week ago
> https://lists.libvirt.org/archives/list/devel@lists.libvirt.org/message/V...),
https://lists.libvirt.org/archives/list/devel@lists.libvirt.org/message/AKDGMLKQ5BKSU6Y7R5OO46GIY2SYNDXF/