[libvirt] [PATCH go-xml] 1, add support for disk cache and io, and add test case. 2, add support for controller model, and add test case. 3, extend DomainAddress struct for PCI address and target&unit, and add test cases. 4, modify DomainController:Index type from string to *uint.
Daniel P. Berrange
berrange at redhat.com
Wed May 31 12:49:02 UTC 2017
On Wed, May 31, 2017 at 09:26:01AM +0100, Daniel P. Berrange wrote:
> On Wed, May 31, 2017 at 01:32:47PM +0800, ZhenweiPi wrote:
> > ---
> >
> > domain.go | 13 +++++++++++--
> > domain_test.go | 56 +++++++++++++++++++++++++++++++++++++++++++++++++++++---
> > 2 files changed, 64 insertions(+), 5 deletions(-)
> >
> > diff --git a/domain.go b/domain.go
> > index 848835a..cbb22e5 100644
> > --- a/domain.go
> > +++ b/domain.go
> > @@ -30,8 +30,10 @@ import (
> > )
> > type DomainController struct {
> > - Type string `xml:"type,attr"`
> > - Index string `xml:"index,attr"`
> > + Type string `xml:"type,attr"`
> > + Index *uint `xml:"index,attr"`
> > + Model string `xml:"model,attr,omitempty"`
> > + Address *DomainAddress `xml:"address"`
> > }
> > type DomainDiskSecret struct {
> > @@ -77,6 +79,8 @@ type DomainDisk struct {
> > Type string `xml:"type,attr"`
> > Device string `xml:"device,attr"`
> > Snapshot string `xml:"snapshot,attr,omitempty"`
> > + Cache string `xml:"cache,attr,omitempty"`
> > + Io string `xml:"io,attr,omitempty"`
> > Driver *DomainDiskDriver `xml:"driver"`
> > Auth *DomainDiskAuth `xml:"auth"`
> > Source *DomainDiskSource `xml:"source"`
> > @@ -196,8 +200,13 @@ type DomainAlias struct {
> > type DomainAddress struct {
> > Type string `xml:"type,attr"`
> > Controller *uint `xml:"controller,attr"`
> > + Domain *uint `xml:"domain,attr"`
> > Bus *uint `xml:"bus,attr"`
> > Port *uint `xml:"port,attr"`
> > + Slot *uint `xml:"slot,attr"`
> > + Function *uint `xml:"function,attr"`
> > + Target *uint `xml:"target,attr"`
> > + Unit *uint `xml:"unit,attr"`
> > }
> > type DomainChardev struct {
> > diff --git a/domain_test.go b/domain_test.go
> > index 265cf80..22da947 100644
> > --- a/domain_test.go
> > +++ b/domain_test.go
> > @@ -30,6 +30,16 @@ import (
> > "testing"
> > )
> > +type PciAddress struct {
> > + Domain uint
> > + Bus uint
> > + Slot uint
> > + Function uint
> > +}
> > +
> > +var uhciIndex uint = 0
> > +var uhciAddr = PciAddress{0, 0, 1, 2}
>
> This struct and variables are rather pointless - just put the values
> inline in the one place where they are needed
Oh actually I see they are needed - you can't take the address of a
scalar in go.
I'll apply this patch to git.
Regards,
Daniel
--
|: https://berrange.com -o- https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org -o- https://fstop138.berrange.com :|
|: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|
More information about the libvir-list
mailing list