From 8ee8fd655513f23bc4e4adbdb2c70cca130fe735 Mon Sep 17 00:00:00 2001 From: Eric Blake Date: Tue, 31 Jan 2012 21:39:18 -0700 Subject: [PATCH] block rebase: wire up remote protocol Nice and simple. * src/remote/remote_protocol.x (REMOTE_PROC_DOMAIN_BLOCK_REBASE): New RPC. * src/remote/remote_driver.c (remote_driver): Wire it up. * src/remote_protocol-structs: Regenerate. --- src/remote/remote_driver.c | 1 + src/remote/remote_protocol.x | 10 +++++++++- src/remote_protocol-structs | 8 ++++++++ 3 files changed, 18 insertions(+), 1 deletion(-) diff --git a/src/remote/remote_driver.c b/src/remote/remote_driver.c index 34816ad440..e06812641f 100644 --- a/src/remote/remote_driver.c +++ b/src/remote/remote_driver.c @@ -4908,6 +4908,7 @@ static virDriver remote_driver = { .domainGetBlockJobInfo = remoteDomainGetBlockJobInfo, /* 0.9.4 */ .domainBlockJobSetSpeed = remoteDomainBlockJobSetSpeed, /* 0.9.4 */ .domainBlockPull = remoteDomainBlockPull, /* 0.9.4 */ + .domainBlockRebase = remoteDomainBlockRebase, /* 0.9.10 */ .setKeepAlive = remoteSetKeepAlive, /* 0.9.8 */ .isAlive = remoteIsAlive, /* 0.9.8 */ .nodeSuspendForDuration = remoteNodeSuspendForDuration, /* 0.9.8 */ diff --git a/src/remote/remote_protocol.x b/src/remote/remote_protocol.x index efb209a23e..59774b29ab 100644 --- a/src/remote/remote_protocol.x +++ b/src/remote/remote_protocol.x @@ -1176,6 +1176,13 @@ struct remote_domain_block_pull_args { unsigned hyper bandwidth; unsigned int flags; }; +struct remote_domain_block_rebase_args { + remote_nonnull_domain dom; + remote_nonnull_string path; + remote_string base; + unsigned hyper bandwidth; + unsigned int flags; +}; struct remote_domain_set_block_io_tune_args { remote_nonnull_domain dom; @@ -2751,7 +2758,8 @@ enum remote_procedure { REMOTE_PROC_DOMAIN_GET_CPU_STATS = 262, /* skipgen skipgen */ REMOTE_PROC_DOMAIN_GET_DISK_ERRORS = 263, /* skipgen skipgen */ REMOTE_PROC_DOMAIN_SET_METADATA = 264, /* autogen autogen */ - REMOTE_PROC_DOMAIN_GET_METADATA = 265 /* autogen autogen */ + REMOTE_PROC_DOMAIN_GET_METADATA = 265, /* autogen autogen */ + REMOTE_PROC_DOMAIN_BLOCK_REBASE = 266 /* autogen autogen */ /* * Notice how the entries are grouped in sets of 10 ? diff --git a/src/remote_protocol-structs b/src/remote_protocol-structs index 8b66a5fbea..8492bee6a8 100644 --- a/src/remote_protocol-structs +++ b/src/remote_protocol-structs @@ -834,6 +834,13 @@ struct remote_domain_block_pull_args { uint64_t bandwidth; u_int flags; }; +struct remote_domain_block_rebase_args { + remote_nonnull_domain dom; + remote_nonnull_string path; + remote_string base; + uint64_t bandwidth; + u_int flags; +}; struct remote_domain_set_block_io_tune_args { remote_nonnull_domain dom; remote_nonnull_string disk; @@ -2165,4 +2172,5 @@ enum remote_procedure { REMOTE_PROC_DOMAIN_GET_DISK_ERRORS = 263, REMOTE_PROC_DOMAIN_SET_METADATA = 264, REMOTE_PROC_DOMAIN_GET_METADATA = 265, + REMOTE_PROC_DOMAIN_BLOCK_REBASE = 266, }; -- GitLab