Rebase implementation in QEMU driver extended with a new 'top' parameter. Support for 'top' added to RPC's remote_domain_block_rebase_args structure. Signed-off-by: Pavel Mores <pmores@xxxxxxxxxx> --- src/driver-hypervisor.h | 1 + src/libvirt-domain.c | 2 +- src/qemu/qemu_driver.c | 3 ++- src/remote/remote_protocol.x | 1 + src/remote_protocol-structs | 1 + 5 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/driver-hypervisor.h b/src/driver-hypervisor.h index bce023017d..51a25c41e3 100644 --- a/src/driver-hypervisor.h +++ b/src/driver-hypervisor.h @@ -1053,6 +1053,7 @@ typedef int (*virDrvDomainBlockRebase)(virDomainPtr dom, const char *path, const char *base, + const char *top, unsigned long bandwidth, unsigned int flags); diff --git a/src/libvirt-domain.c b/src/libvirt-domain.c index 1f9d1b5b84..33e307cb26 100644 --- a/src/libvirt-domain.c +++ b/src/libvirt-domain.c @@ -10287,7 +10287,7 @@ virDomainBlockRebase(virDomainPtr dom, const char *disk, if (conn->driver->domainBlockRebase) { int ret; - ret = conn->driver->domainBlockRebase(dom, disk, base, bandwidth, + ret = conn->driver->domainBlockRebase(dom, disk, base, top, bandwidth, flags); if (ret < 0) goto error; diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c index 7970c913f3..b3f97bf593 100644 --- a/src/qemu/qemu_driver.c +++ b/src/qemu/qemu_driver.c @@ -18143,7 +18143,8 @@ qemuDomainBlockCopyCommon(virDomainObjPtr vm, static int qemuDomainBlockRebase(virDomainPtr dom, const char *path, const char *base, - unsigned long bandwidth, unsigned int flags) + const char *top, unsigned long bandwidth, + unsigned int flags) { virDomainObjPtr vm; int ret = -1; diff --git a/src/remote/remote_protocol.x b/src/remote/remote_protocol.x index d4393680e9..5f5a921057 100644 --- a/src/remote/remote_protocol.x +++ b/src/remote/remote_protocol.x @@ -1414,6 +1414,7 @@ struct remote_domain_block_rebase_args { remote_nonnull_domain dom; remote_nonnull_string path; remote_string base; + remote_string top; unsigned hyper bandwidth; unsigned int flags; }; diff --git a/src/remote_protocol-structs b/src/remote_protocol-structs index bae0f0b545..b317ec9102 100644 --- a/src/remote_protocol-structs +++ b/src/remote_protocol-structs @@ -992,6 +992,7 @@ struct remote_domain_block_rebase_args { remote_nonnull_domain dom; remote_nonnull_string path; remote_string base; + remote_string top; uint64_t bandwidth; u_int flags; }; -- 2.24.1