On Fri, Feb 17, 2012 at 02:22:31PM +0100, Christophe Fergeau wrote: > Ping? > > On Wed, Feb 08, 2012 at 12:13:02PM +0100, Christophe Fergeau wrote: > > --- > > libvirt-gconfig/libvirt-gconfig-domain-disk.c | 23 +++++++++++++++++++++++ > > libvirt-gconfig/libvirt-gconfig-domain-disk.h | 12 ++++++++++++ > > libvirt-gconfig/libvirt-gconfig.sym | 3 +++ > > libvirt-gconfig/tests/test-domain-create.c | 2 ++ > > 4 files changed, 40 insertions(+), 0 deletions(-) > > > > diff --git a/libvirt-gconfig/libvirt-gconfig-domain-disk.c b/libvirt-gconfig/libvirt-gconfig-domain-disk.c > > index b2861e4..afa7eda 100644 > > --- a/libvirt-gconfig/libvirt-gconfig-domain-disk.c > > +++ b/libvirt-gconfig/libvirt-gconfig-domain-disk.c > > @@ -172,6 +172,18 @@ void gvir_config_domain_disk_set_driver_type(GVirConfigDomainDisk *disk, > > "driver", "type", driver_type); > > } > > > > +void gvir_config_domain_disk_set_driver_cache(GVirConfigDomainDisk *disk, > > + GVirConfigDomainDiskCacheType cache_type) > > +{ > > + const char *cache_str; > > + > > + g_return_if_fail(GVIR_CONFIG_IS_DOMAIN_DISK(disk)); > > + cache_str = gvir_config_genum_get_nick(GVIR_CONFIG_TYPE_DOMAIN_DISK_CACHE_TYPE, cache_type); > > + g_return_if_fail(cache_str != NULL); > > + gvir_config_object_add_child_with_attribute(GVIR_CONFIG_OBJECT(disk), > > + "driver", "cache", cache_str); > > +} > > + > > void gvir_config_domain_disk_set_target_bus(GVirConfigDomainDisk *disk, > > GVirConfigDomainDiskBus bus) > > { > > @@ -269,6 +281,17 @@ gvir_config_domain_disk_get_driver_type(GVirConfigDomainDisk *disk) > > "driver", "type"); > > } > > > > +GVirConfigDomainDiskCacheType > > +gvir_config_domain_disk_get_driver_cache(GVirConfigDomainDisk *disk) > > +{ > > + g_return_val_if_fail(GVIR_CONFIG_IS_DOMAIN_DISK(disk), > > + GVIR_CONFIG_DOMAIN_DISK_CACHE_DEFAULT); > > + > > + return gvir_config_object_get_attribute_genum(GVIR_CONFIG_OBJECT(disk), > > + "driver", "cache", > > + GVIR_CONFIG_TYPE_DOMAIN_DISK_CACHE_TYPE, > > + GVIR_CONFIG_DOMAIN_DISK_CACHE_DEFAULT); > > +} > > GVirConfigDomainDiskBus > > gvir_config_domain_disk_get_target_bus(GVirConfigDomainDisk *disk) > > { > > diff --git a/libvirt-gconfig/libvirt-gconfig-domain-disk.h b/libvirt-gconfig/libvirt-gconfig-domain-disk.h > > index 3359049..4b16b80 100644 > > --- a/libvirt-gconfig/libvirt-gconfig-domain-disk.h > > +++ b/libvirt-gconfig/libvirt-gconfig-domain-disk.h > > @@ -75,6 +75,15 @@ typedef enum { > > } GVirConfigDomainDiskBus; > > > > typedef enum { > > + GVIR_CONFIG_DOMAIN_DISK_CACHE_DEFAULT, > > + GVIR_CONFIG_DOMAIN_DISK_CACHE_NONE, > > + GVIR_CONFIG_DOMAIN_DISK_CACHE_WRITETHROUGH, > > + GVIR_CONFIG_DOMAIN_DISK_CACHE_WRITEBACK, > > + GVIR_CONFIG_DOMAIN_DISK_CACHE_DIRECTSYNC, > > + GVIR_CONFIG_DOMAIN_DISK_CACHE_UNSAFE > > +} GVirConfigDomainDiskCacheType; > > + > > +typedef enum { > > GVIR_CONFIG_DOMAIN_DISK_GUEST_DEVICE_DISK, > > GVIR_CONFIG_DOMAIN_DISK_GUEST_DEVICE_FLOPPY, > > GVIR_CONFIG_DOMAIN_DISK_GUEST_DEVICE_CDROM > > @@ -100,6 +109,8 @@ void gvir_config_domain_disk_set_snapshot_type(GVirConfigDomainDisk *disk, > > GVirConfigDomainDiskSnapshotType type); > > void gvir_config_domain_disk_set_source(GVirConfigDomainDisk *disk, > > const char *source); > > +void gvir_config_domain_disk_set_driver_cache(GVirConfigDomainDisk *disk, > > + GVirConfigDomainDiskCacheType cache_type); > > void gvir_config_domain_disk_set_driver_name(GVirConfigDomainDisk *disk, > > const char *driver_name); > > void gvir_config_domain_disk_set_driver_type(GVirConfigDomainDisk *disk, > > @@ -113,6 +124,7 @@ GVirConfigDomainDiskType gvir_config_domain_disk_get_disk_type(GVirConfigDomainD > > GVirConfigDomainDiskGuestDeviceType gvir_config_domain_disk_get_guest_device_type(GVirConfigDomainDisk *disk); > > GVirConfigDomainDiskSnapshotType gvir_config_domain_disk_get_snapshot_type(GVirConfigDomainDisk *disk); > > char *gvir_config_domain_disk_get_source(GVirConfigDomainDisk *disk); > > +GVirConfigDomainDiskCacheType gvir_config_domain_disk_get_driver_cache(GVirConfigDomainDisk *disk); > > char *gvir_config_domain_disk_get_driver_name(GVirConfigDomainDisk *disk); > > char *gvir_config_domain_disk_get_driver_type(GVirConfigDomainDisk *disk); > > GVirConfigDomainDiskBus gvir_config_domain_disk_get_target_bus(GVirConfigDomainDisk *disk); > > diff --git a/libvirt-gconfig/libvirt-gconfig.sym b/libvirt-gconfig/libvirt-gconfig.sym > > index ab2c7bf..96ce58f 100644 > > --- a/libvirt-gconfig/libvirt-gconfig.sym > > +++ b/libvirt-gconfig/libvirt-gconfig.sym > > @@ -69,11 +69,14 @@ LIBVIRT_GCONFIG_0.0.4 { > > > > gvir_config_domain_disk_get_type; > > gvir_config_domain_disk_bus_get_type; > > + gvir_config_domain_disk_cache_type_get_type; > > gvir_config_domain_disk_guest_device_type_get_type; > > gvir_config_domain_disk_snapshot_type_get_type; > > gvir_config_domain_disk_type_get_type; > > gvir_config_domain_disk_new; > > gvir_config_domain_disk_new_from_xml; > > + gvir_config_domain_disk_get_driver_cache; > > + gvir_config_domain_disk_set_driver_cache; > > gvir_config_domain_disk_get_driver_name; > > gvir_config_domain_disk_set_driver_name; > > gvir_config_domain_disk_get_driver_type; > > diff --git a/libvirt-gconfig/tests/test-domain-create.c b/libvirt-gconfig/tests/test-domain-create.c > > index 821e0b0..0cd8304 100644 > > --- a/libvirt-gconfig/tests/test-domain-create.c > > +++ b/libvirt-gconfig/tests/test-domain-create.c > > @@ -101,6 +101,8 @@ int main(int argc, char **argv) > > gvir_config_domain_disk_set_driver_name(disk, "foo"); > > gvir_config_domain_disk_set_driver_type(disk, "bar"); > > gvir_config_domain_disk_set_driver_name(disk, "qemu"); > > + gvir_config_domain_disk_set_driver_cache(disk, GVIR_CONFIG_DOMAIN_DISK_CACHE_NONE); > > + g_assert(gvir_config_domain_disk_get_driver_cache(disk) == GVIR_CONFIG_DOMAIN_DISK_CACHE_NONE); > > gvir_config_domain_disk_set_driver_type(disk, "qcow2"); > > gvir_config_domain_disk_set_target_bus(disk, GVIR_CONFIG_DOMAIN_DISK_BUS_IDE); > > gvir_config_domain_disk_set_target_dev(disk, "hda"); ACK Daniel -- |: http://berrange.com -o- http://www.flickr.com/photos/dberrange/ :| |: http://libvirt.org -o- http://virt-manager.org :| |: http://autobuild.org -o- http://search.cpan.org/~danberr/ :| |: http://entangle-photo.org -o- http://live.gnome.org/gtk-vnc :| -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list