From: Pavel Hrdina <phrd...@redhat.com>

There is no need to have --parallel and --parallel-channels especially
when --parallel on its own is the same as not used at all. In both cases
libvirt will default to single channel.

Signed-off-by: Pavel Hrdina <phrd...@redhat.com>
---
 docs/manpages/virsh.rst | 11 +++++------
 tools/virsh-domain.c    | 20 +++++++-------------
 2 files changed, 12 insertions(+), 19 deletions(-)

diff --git a/docs/manpages/virsh.rst b/docs/manpages/virsh.rst
index fede984e11..65ec03cf20 100644
--- a/docs/manpages/virsh.rst
+++ b/docs/manpages/virsh.rst
@@ -4179,7 +4179,7 @@ save
 ::
 
    save domain state-file [--bypass-cache] [--xml file]
-      [--parallel] [--parallel-channels channels]
+      [--parallel-channels channels]
       [{--running | --paused}] [--verbose]
 
 Saves a running domain (RAM, but not disk state) to a state file so that
@@ -4213,11 +4213,10 @@ based on the state the domain was in when the save was 
done; passing
 either the *--running* or *--paused* flag will allow overriding which
 state the ``restore`` should use.
 
-*--parallel* option will cause the save data to be written to file
-over multiple parallel IO channels. The number of channels can be
-specified using *--parallel-channels*. Using parallel IO channels
-requires the use of ``sparse`` image save format. Parallel save may
-significantly reduce the time required to save large memory domains.
+*--parallel-channels* option can specify number of parallel IO channels
+to be used when saving memory to file. Using parallel IO channels requires
+the use of ``sparse`` image save format. Parallel save may significantly
+reduce the time required to save large memory domains.
 
 Domain saved state files assume that disk images will be unchanged
 between the creation and restore point.  For a more complete system
diff --git a/tools/virsh-domain.c b/tools/virsh-domain.c
index bb49860604..7adf6c16fa 100644
--- a/tools/virsh-domain.c
+++ b/tools/virsh-domain.c
@@ -4530,13 +4530,9 @@ static const vshCmdOptDef opts_save[] = {
      .type = VSH_OT_BOOL,
      .help = N_("avoid file system cache when saving")
     },
-    {.name = "parallel",
-     .type = VSH_OT_BOOL,
-     .help = N_("enable parallel save")
-    },
     {.name = "parallel-channels",
      .type = VSH_OT_INT,
-     .help = N_("number of extra IO channels to use for parallel save")
+     .help = N_("number of IO channels to use for parallel save")
     },
     {.name = "xml",
      .type = VSH_OT_STRING,
@@ -4571,8 +4567,7 @@ doSave(void *opaque)
     virTypedParameterPtr params = NULL;
     int nparams = 0;
     int maxparams = 0;
-    int nchannels = 1;
-    int rv = -1;
+    int nchannels = 0;
     unsigned int flags = 0;
     const char *xmlfile = NULL;
     g_autofree char *xml = NULL;
@@ -4592,8 +4587,6 @@ doSave(void *opaque)
         flags |= VIR_DOMAIN_SAVE_RUNNING;
     if (vshCommandOptBool(cmd, "paused"))
         flags |= VIR_DOMAIN_SAVE_PAUSED;
-    if (vshCommandOptBool(cmd, "parallel"))
-        flags |= VIR_DOMAIN_SAVE_PARALLEL;
 
     if (vshCommandOptString(ctl, cmd, "file", &to) < 0)
         goto out;
@@ -4602,13 +4595,14 @@ doSave(void *opaque)
                                 VIR_DOMAIN_SAVE_PARAM_FILE, to) < 0)
         goto out;
 
-    if (flags & VIR_DOMAIN_SAVE_PARALLEL) {
-        if ((rv = vshCommandOptInt(ctl, cmd, "parallel-channels", &nchannels)) 
< 0)
-            goto out;
-
+    if ((rc = vshCommandOptInt(ctl, cmd, "parallel-channels", &nchannels)) < 0)
+        goto out;
+    if (rc == 1) {
         if (virTypedParamsAddInt(&params, &nparams, &maxparams,
                                  VIR_DOMAIN_SAVE_PARAM_PARALLEL_CHANNELS, 
nchannels) < 0)
             goto out;
+
+        flags |= VIR_DOMAIN_SAVE_PARALLEL;
     }
 
     if (vshCommandOptString(ctl, cmd, "xml", &xmlfile) < 0)
-- 
2.48.1

Reply via email to