[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [RFC V10 4/4] domain snapshot design: libxl
On Mon, 2015-01-26 at 11:25 +0800, Chunyan Liu wrote: > Changes to V9: > * update libxl_disk_snapshot structures as Ian suggests > * add more descriptions for libxl_disk_snapshot_delete > * add two functions for deleting external disk snapshot: > libxl_domain_block_rebase and libxl_domain_block_commit > > =========================================================================== > > Libxl Design > > 1. New Structures > > libxl_disk_snapshot_type = Struct("disk_snapshot_type", [ > (0, "default"), How is default handled wrt the keyed union? In particualr if default turns out to mean external, then external_path would need to be non-null -- how is that fabricated? Or did you mean s/default/unknown/ suggesting this would be an illegal input? > (1, "internal"), > (2, "external"), > ]) > > libxl_disk_snapshot = Struct("disk_snapshot",[ > # target disk > ("disk", libxl_device_disk), > > # disk snapshot name > ("name", string), > > ("u", KeyedUnion(None, libxl_disk_snapshot_type, "type", > [("external", Struct(None, [ > > # disk format for external files. Since external disk snapshot is > # implemented with backing file mechanism, the external file disk > # format must support backing file. This field can be NULL, then > # a proper disk format will be used by default according to the > # orignal disk format. > ("external_format", libxl_disk_format), > > # external file path. This field should be non-NULL and a new > path. > ("external_path", string), > ])) > ])) > ]) > > > 2. New Functions [...] > /** > * libxl_disk_to_snapshot: > * @snapshot: array of disk snapshot configuration. Has "nb" members. > * @nb: number of disks. > * @ctx: libxl context > * @domid: domain id > * @snapshot (OUTPUT): array of disk snapshot configuration. > * @num (OUTPUT): number of disks. @nb must equal @num, perhaps you actually meant for this to be an IN/OUT parameter along with @snapshot instead of passing an IN array and an OUT array? > * > * Helper function to produce an array of libxl_disk_snapshot. > * > * Could be used when user doesn't specify disk snapshot information > * in creating a domain snapshot, it will by default fill disk snapshot > * information according to domain disks: > * By default it will take internal disk snapshot to each domain > * disk that could take internal disk snapshot, otherwise, take > * external disk snapshot. How does this function determine the external path? _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |