[libvirt] [PATCH 0/12] Standardized device addressing & SCSI controller/disk hotplug

Daniel P. Berrange berrange at redhat.com
Thu Dec 17 09:39:43 UTC 2009

On Thu, Dec 10, 2009 at 10:22:20PM +0000, Daniel P. Berrange wrote:
> The XML for each address type looks like
>       <address type='pci' mode='static' domain='0x0000' bus='0x1e' slot='0x07' function='0x0'/>
>       <address type='usb' mode='dynamic' bus='007' dev='003'/>
>       <address type='drive' mode='dynamic' controller='1' bus='0' unit='5'/>
> The 'mode' attribute for any of them is allowed to be either
> 'static' or 'dynamic'. A static address is one specified by
> the end user when defining the XML, while a dynamic address is
> one automatically chosen by libvirt/QEMU every time a guest
> boots. The idea of static addresses is to allow management
> apps to guarentee that PCI device & drive numbering never
> changes. This series does not actually implement static
> addressing for PCI yet, because it requires that we change
> the way we generate QEMU command line arguments. It does
> do static addressing for disks.

I'm now wondering whether we actually truely need the 'dynamic'
option. It already doesn't really make sense for disks. For PCI
though I'm not sure anyone would ever want the dynamic mode, 
where addresses can change at every boot. I think I should just
remove the 'mode' attribute here, and just have libvirt detect
PCI addresses the first time, and keep them the same thereafter.

The second thought is whether we should put the <address>
data inside a <device> element, so it looked like

  <device type='pci'>
     <address domain='0x0000' bus='0x1e' slot='0x07' function='0x0'/>

The reason being, that I think it might be interesting to  also add in
the vendor / product info at a later date 

  <device type='pci'>
     <vendor id='0x8086'/>
     <product id='0x1234'/>
     <address domain='0x0000' bus='0x1e' slot='0x07' function='0x0'/>

|: Red Hat, Engineering, London   -o-   http://people.redhat.com/berrange/ :|
|: http://libvirt.org  -o-  http://virt-manager.org  -o-  http://ovirt.org :|
|: http://autobuild.org       -o-         http://search.cpan.org/~danberr/ :|
|: GnuPG: 7D3B9505  -o-  F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 :|

More information about the libvir-list mailing list