From 29265571200f4258dc1493aafd6beb848a027efb Mon Sep 17 00:00:00 2001 From: Cole Robinson Date: Tue, 16 Oct 2012 20:30:23 -0400 Subject: storage: lvm: lvcreate fails with allocation=0, don't do that On F17 at least, this command fails: $ sudo /usr/sbin/lvcreate --name sparsetest -L 0K --virtualsize 16384K vgvirt Unable to create new logical volume with no extents Which is unfortunate since allocation=0 is what virt-manager tries to use by default. Rather than telling the user 'don't do that', let's just give them the smallest allocation possible if alloc=0 is requested. https://bugzilla.redhat.com/show_bug.cgi?id=866481 --- src/storage/storage_backend_logical.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/storage/storage_backend_logical.c b/src/storage/storage_backend_logical.c index eebeec1ba..de43c3a42 100644 --- a/src/storage/storage_backend_logical.c +++ b/src/storage/storage_backend_logical.c @@ -725,7 +725,8 @@ virStorageBackendLogicalCreateVol(virConnectPtr conn, NULL); virCommandAddArg(cmd, "-L"); if (vol->capacity != vol->allocation) { - virCommandAddArgFormat(cmd, "%lluK", VIR_DIV_UP(vol->allocation, 1024)); + virCommandAddArgFormat(cmd, "%lluK", + VIR_DIV_UP(vol->allocation ? vol->allocation : 1, 1024)); virCommandAddArg(cmd, "--virtualsize"); } virCommandAddArgFormat(cmd, "%lluK", VIR_DIV_UP(vol->capacity, 1024)); -- cgit v1.2.3