提交 dd2f524c 编写于 作者: C Cole Robinson

storage: lvm: Don't overwrite lvcreate errors

Before:
$ sudo virsh vol-create-as --pool vgvirt sparsetest --capacity 16M --allocation 0
error: Failed to create vol sparsetest
error: internal error Child process (/usr/sbin/lvchange -aln vgvirt/sparsetest) unexpected exit status 5:   One or more specified logical volume(s) not found.

After:
$ sudo virsh vol-create-as --pool vgvirt sparsetest --capacity 16M --allocation 0
error: Failed to create vol sparsetest
error: internal error Child process (/usr/sbin/lvcreate --name sparsetest -L 0K --virtualsize 16384K vgvirt) unexpected exit status 5:   Unable to create new logical volume with no extents
(cherry picked from commit 01df6f2b)

Conflicts:
	src/storage/storage_backend_logical.c
上级 d325704a
......@@ -679,6 +679,7 @@ virStorageBackendLogicalCreateVol(virConnectPtr conn,
"-s", vol->backingStore.path, NULL
};
const char **cmdargv = cmdargvnew;
virErrorPtr err;
if (vol->target.encryption != NULL) {
virStorageReportError(VIR_ERR_CONFIG_UNSUPPORTED,
......@@ -750,8 +751,10 @@ virStorageBackendLogicalCreateVol(virConnectPtr conn,
return 0;
cleanup:
err = virSaveLastError();
VIR_FORCE_CLOSE(fd);
virStorageBackendLogicalDeleteVol(conn, pool, vol, 0);
virSetError(err);
return -1;
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册