[libvirt] [PATCH 3/4] snapshot: RPC for new query APIs

Osier Yang jyang at redhat.com
Mon Jun 11 06:50:33 UTC 2012


On 2012年05月25日 11:33, Eric Blake wrote:
> Pretty straightforward.
>
> * src/remote/remote_protocol.x
> (remote_domain_snapshot_is_current_args)
> (remote_domain_snapshot_is_current_ret)
> (remote_domain_snapshot_has_metadata_args)
> (remote_domain_snapshot_has_metadata_ret): New structs.
> (REMOTE_PROC_DOMAIN_SNAPSHOT_IS_CURRENT)
> (REMOTE_PROC_DOMAIN_SNAPSHOT_HAS_METADATA): New RPC calls.
> * src/remote/remote_driver.c (remote_driver): Call them.
> * src/remote_protocol-structs: Regenerate.
> ---
>   src/remote/remote_driver.c   |    2 ++
>   src/remote/remote_protocol.x |   23 ++++++++++++++++++++++-
>   src/remote_protocol-structs  |   16 ++++++++++++++++
>   3 files changed, 40 insertions(+), 1 deletions(-)
>
> diff --git a/src/remote/remote_driver.c b/src/remote/remote_driver.c
> index 5c87561..fc9babd 100644
> --- a/src/remote/remote_driver.c
> +++ b/src/remote/remote_driver.c
> @@ -5082,6 +5082,8 @@ static virDriver remote_driver = {
>       .domainSnapshotGetParent = remoteDomainSnapshotGetParent, /* 0.9.7 */
>       .domainSnapshotCurrent = remoteDomainSnapshotCurrent, /* 0.8.0 */
>       .domainRevertToSnapshot = remoteDomainRevertToSnapshot, /* 0.8.0 */
> +    .domainSnapshotIsCurrent = remoteDomainSnapshotIsCurrent, /* 0.9.13 */
> +    .domainSnapshotHasMetadata = remoteDomainSnapshotHasMetadata, /* 0.9.13 */
>       .domainSnapshotDelete = remoteDomainSnapshotDelete, /* 0.8.0 */
>       .qemuDomainMonitorCommand = remoteQemuDomainMonitorCommand, /* 0.8.3 */
>       .qemuDomainAttach = qemuDomainAttach, /* 0.9.4 */
> diff --git a/src/remote/remote_protocol.x b/src/remote/remote_protocol.x
> index 2d57247..9982963 100644
> --- a/src/remote/remote_protocol.x
> +++ b/src/remote/remote_protocol.x
> @@ -2305,6 +2305,24 @@ struct remote_domain_snapshot_current_ret {
>       remote_nonnull_domain_snapshot snap;
>   };
>
> +struct remote_domain_snapshot_is_current_args {
> +    remote_nonnull_domain_snapshot snap;
> +    unsigned int flags;
> +};
> +
> +struct remote_domain_snapshot_is_current_ret {
> +    int current;
> +};
> +
> +struct remote_domain_snapshot_has_metadata_args {
> +    remote_nonnull_domain_snapshot snap;
> +    unsigned int flags;
> +};
> +
> +struct remote_domain_snapshot_has_metadata_ret {
> +    int metadata;
> +};
> +
>   struct remote_domain_revert_to_snapshot_args {
>       remote_nonnull_domain_snapshot snap;
>       unsigned int flags;
> @@ -2782,7 +2800,10 @@ enum remote_procedure {
>       REMOTE_PROC_DOMAIN_PM_WAKEUP = 267, /* autogen autogen */
>       REMOTE_PROC_DOMAIN_EVENT_TRAY_CHANGE = 268, /* autogen autogen */
>       REMOTE_PROC_DOMAIN_EVENT_PMWAKEUP = 269, /* autogen autogen */
> -    REMOTE_PROC_DOMAIN_EVENT_PMSUSPEND = 270 /* autogen autogen */
> +    REMOTE_PROC_DOMAIN_EVENT_PMSUSPEND = 270, /* autogen autogen */
> +
> +    REMOTE_PROC_DOMAIN_SNAPSHOT_IS_CURRENT = 271, /* autogen autogen */
> +    REMOTE_PROC_DOMAIN_SNAPSHOT_HAS_METADATA = 272 /* 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 9b2414f..8e00b0e 100644
> --- a/src/remote_protocol-structs
> +++ b/src/remote_protocol-structs
> @@ -1756,6 +1756,20 @@ struct remote_domain_snapshot_current_args {
>   struct remote_domain_snapshot_current_ret {
>           remote_nonnull_domain_snapshot snap;
>   };
> +struct remote_domain_snapshot_is_current_args {
> +        remote_nonnull_domain_snapshot snap;
> +        u_int                      flags;
> +};
> +struct remote_domain_snapshot_is_current_ret {
> +        int                        current;
> +};
> +struct remote_domain_snapshot_has_metadata_args {
> +        remote_nonnull_domain_snapshot snap;
> +        u_int                      flags;
> +};
> +struct remote_domain_snapshot_has_metadata_ret {
> +        int                        metadata;
> +};
>   struct remote_domain_revert_to_snapshot_args {
>           remote_nonnull_domain_snapshot snap;
>           u_int                      flags;
> @@ -2192,4 +2206,6 @@ enum remote_procedure {
>           REMOTE_PROC_DOMAIN_EVENT_TRAY_CHANGE = 268,
>           REMOTE_PROC_DOMAIN_EVENT_PMWAKEUP = 269,
>           REMOTE_PROC_DOMAIN_EVENT_PMSUSPEND = 270,
> +        REMOTE_PROC_DOMAIN_SNAPSHOT_IS_CURRENT = 271,
> +        REMOTE_PROC_DOMAIN_SNAPSHOT_HAS_METADATA = 272,
>   };

ACK.

Osier




More information about the libvir-list mailing list