[libvirt] [PATCH v3 2/2] Make the API public
Srivatsa S. Bhat
srivatsa.bhat at linux.vnet.ibm.com
Wed Nov 23 10:40:26 UTC 2011
On 11/22/2011 11:56 PM, Eric Blake wrote:
> On 11/09/2011 05:05 AM, Srivatsa S. Bhat wrote:
>> Define the required interfaces to export the API.
>>
>> Signed-off-by: Srivatsa S. Bhat <srivatsa.bhat at linux.vnet.ibm.com>
>> ---
>>
>> include/libvirt/libvirt.h.in | 4 ++++
>> src/driver.h | 5 ++++
>> src/libvirt.c | 48 ++++++++++++++++++++++++++++++++++++++++++
>> src/libvirt_public.syms | 1 +
>
> These changes are good for the first patch, in introducing the API.
> Plus see my comment in 1/2 about the hunk defining VIR_S3 (or whatever
> name we settle on) being part of this patch.
>
>> src/qemu/qemu_driver.c | 1 +
>
> This change should be shuffled into the qemu driver implementation of
> the driver backend.
>
>> src/remote/remote_driver.c | 1 +
>> src/remote/remote_protocol.x | 12 ++++++++++-
>
> These changes belong to a second patch, implementing the RPC driver
> backend. And don't forget a patch to virsh.
>
>> +++ b/include/libvirt/libvirt.h.in
>> @@ -1055,6 +1055,10 @@ unsigned long long virNodeGetFreeMemory (virConnectPtr conn);
>> int virNodeGetSecurityModel (virConnectPtr conn,
>> virSecurityModelPtr secmodel);
>>
>> +int virNodeSuspendForDuration (virConnectPtr conn,
>> + int state,
>> + unsigned long long duration);
>
> Needs an 'unsigned int flags' argument, even if we always pass 0 for now.
>
>> +++ b/src/libvirt.c
>> @@ -6303,6 +6303,54 @@ error:
>> }
>>
>> /**
>> + * virNodeSuspendForDuration:
>> + * @conn: pointer to the hypervisor connection
>> + * @state: the state to which the host must be suspended to,
>> + * such as: VIR_S3 (Suspend-to-RAM)
>> + * VIR_S4 (Suspend-to-Disk)
>
> Is this a bitmask or a linear list? I guess a list makes more sense.
> Also, some machines support a hybrid between S3 and S4 (pm-is-supported
> --suspend-hybrid), which saves state to disk like S4 but then drops to
> S3 for faster resume as long as power is present. Perhaps a hybrid
> state is deserving of a third value in the enum?
>
That would need a corresponding change in virGetPMCapabilities etc (which
was introduced in the other patch which Daniel Veillard pushed already).
http://www.redhat.com/archives/libvir-list/2011-November/msg01155.html
Perhaps, I'll send a companion patch to add the hybrid-suspend discovery
to that, and then base the next version of this patchset on that.
--
Regards,
Srivatsa S. Bhat
IBM Linux Technology Center
More information about the libvir-list
mailing list