[libvirt] [PATCH] storage: Fix lvcreate parameter for backingStore.

Atsushi Kumagai kumagai-atsushi at mxc.nes.nec.co.jp
Fri Jan 18 02:41:24 UTC 2013


When virStorageBackendLogicalCreateVol() creates a snapshot for a
logical volume with backingStore element, it fails with the message
below:

  2013-01-17 03:10:18.869+0000: 1967: error : virCommandWait:2345 :
  internal error Child process (/sbin/lvcreate --name lvm-snapshot -L 51200K
  -s=/dev/lvm-pool/lvm-volume) unexpected exit status 3: /sbin/lvcreate:
  invalid option -- '='  Error during parsing of command line.

This is because virCommandAddArgPair() uses '=' to connect the two
parameters, it's unsuitable for -s option of the lvcreate.

Signed-off-by: Atsushi Kumagai <kumagai-atsushi at mxc.nes.nec.co.jp>

---
 src/storage/storage_backend_logical.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/src/storage/storage_backend_logical.c b/src/storage/storage_backend_logical.c
index 91db3fd..bb709df 100644
--- a/src/storage/storage_backend_logical.c
+++ b/src/storage/storage_backend_logical.c
@@ -736,7 +736,7 @@ virStorageBackendLogicalCreateVol(virConnectPtr conn,
     }
     virCommandAddArgFormat(cmd, "%lluK", VIR_DIV_UP(vol->capacity, 1024));
     if (vol->backingStore.path)
-        virCommandAddArgPair(cmd, "-s", vol->backingStore.path);
+        virCommandAddArgList(cmd, "-s", vol->backingStore.path, NULL);
     else
         virCommandAddArg(cmd, pool->def->source.name);
-- 
1.7.1




More information about the libvir-list mailing list