[libvirt] [PATCH 6/6] virsh: Add group name to blkdeviotune output

Martin Kletzander mkletzan at redhat.com
Wed Nov 2 14:57:38 UTC 2016


On Mon, Oct 31, 2016 at 05:23:02PM -0400, John Ferlan wrote:
>https://bugzilla.redhat.com/show_bug.cgi?id=1336564
>
>Add the ability to set/display the group_name for block device iotune
>
>Signed-off-by: John Ferlan <jferlan at redhat.com>
>---
> tools/virsh-domain.c | 17 +++++++++++++++++
> tools/virsh.pod      |  5 ++++-
> 2 files changed, 21 insertions(+), 1 deletion(-)
>
>diff --git a/tools/virsh-domain.c b/tools/virsh-domain.c
>index 184f64d..9451218 100644
>--- a/tools/virsh-domain.c
>+++ b/tools/virsh-domain.c
>@@ -1263,6 +1263,10 @@ static const vshCmdOptDef opts_blkdeviotune[] = {
>      .type = VSH_OT_INT,
>      .help = N_("I/O size in bytes")
>     },
>+    {.name = "group_name",
>+     .type = VSH_OT_STRING,
>+     .help = N_("group name to share I/O quota between multiple drives")
>+    },
>     {.name = "total_bytes_sec_max_length",
>      .type = VSH_OT_ALIAS,
>      .help = "total-bytes-sec-max-length"
>@@ -1322,6 +1326,7 @@ cmdBlkdeviotune(vshControl *ctl, const vshCmd *cmd)
> {
>     virDomainPtr dom = NULL;
>     const char *name, *disk;
>+    const char *group_name = NULL;
>     unsigned long long value;
>     int nparams = 0;
>     int maxparams = 0;
>@@ -1393,6 +1398,18 @@ cmdBlkdeviotune(vshControl *ctl, const vshCmd *cmd)
>     VSH_ADD_IOTUNE(write-iops-sec-max-length, WRITE_IOPS_SEC_MAX_LENGTH);
> #undef VSH_ADD_IOTUNE
>
>+    rv = vshCommandOptStringQuiet(ctl, cmd, "group_name", &group_name);

Just use vshCommandOptStringReq().

>+    if (rv < 0) {
>+        vshError(ctl, "%s", _("Unable to parse group parameter"));
>+        goto cleanup;
>+    } else if (rv > 0) {
>+        if (virTypedParamsAddString(&params, &nparams, &maxparams,
>+                                    VIR_DOMAIN_BLOCK_IOTUNE_GROUP_NAME,
>+                                    group_name) < 0)
>+            goto save_error;
>+    }
>+
>+
>     if (nparams == 0) {
>         if (virDomainGetBlockIoTune(dom, NULL, NULL, &nparams, flags) != 0) {
>             vshError(ctl, "%s",
>diff --git a/tools/virsh.pod b/tools/virsh.pod
>index f278fec..e98cd0f 100644
>--- a/tools/virsh.pod
>+++ b/tools/virsh.pod
>@@ -1139,7 +1139,7 @@ command.
> [I<read-bytes-sec-max-length>] [I<write-bytes-sec-max-length>]]
> [[I<total-iops-sec-max-length>] |
> [I<read-iops-sec-max-length>] [I<write-iops-sec-max-length>]]
>-[I<size-iops-sec>]
>+[I<size-iops-sec>] [I<group_name>]
>
> Set or query the block disk io parameters for a block device of I<domain>.
> I<device> specifies a unique target name (<target dev='name'/>) or source
>@@ -1179,6 +1179,9 @@ read I/O operations limit.
> I<--write-iops-sec-max-length> specifies duration in seconds to allow maximum
> write I/O operations limit.
> I<--size-iops-sec> specifies size I/O operations limit per second.
>+I<--group_name> specifies group name to share I/O quota between multiple drives.
>+For a qemu domain, if no name is provided, then the default is to have a single
>+group for each I<device>.
>
> Older versions of virsh only accepted these options with underscore
> instead of dash, as in I<--total_bytes_sec>.
>--
>2.7.4
>
>--
>libvir-list mailing list
>libvir-list at redhat.com
>https://www.redhat.com/mailman/listinfo/libvir-list
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 801 bytes
Desc: Digital signature
URL: <http://listman.redhat.com/archives/libvir-list/attachments/20161102/708124ae/attachment-0001.sig>


More information about the libvir-list mailing list