Laine Stump 3b1c191fe7 conf: parse/format type='hostdev' network interfaces
This is the new interface type that sets up an SR-IOV PCI network
device to be assigned to the guest with PCI passthrough after
initializing some network device-specific things from the config
(e.g. MAC address, virtualport profile parameters). Here is an example
of the syntax:

  <interface type='hostdev' managed='yes'>
    <source>
      <address type='pci' domain='0' bus='0' slot='4' function='3'/>
    </source>
    <mac address='00:11:22:33:44:55'/>
    <address type='pci' domain='0' bus='0' slot='7' function='0'/>
  </interface>

This would assign the PCI card from bus 0 slot 4 function 3 on the
host, to bus 0 slot 7 function 0 on the guest, but would first set the
MAC address of the card to 00:11:22:33:44:55.

NB: The parser and formatter don't care if the PCI card being
specified is a standard single function network adapter, or a virtual
function (VF) of an SR-IOV capable network adapter, but the upcoming
code that implements the back end of this config will work *only* with
SR-IOV VFs. This is because modifying the mac address of a standard
network adapter prior to assigning it to a guest is pointless - part
of the device reset that occurs during that process will reset the MAC
address to the value programmed into the card's firmware.

Although it's not supported by any of libvirt's hypervisor drivers,
usb network hostdevs are also supported in the parser and formatter
for completeness and consistency. <source> syntax is identical to that
for plain <hostdev> devices, except that the <address> element should
have "type='usb'" added if bus/device are specified:

  <interface type='hostdev'>
    <source>
      <address type='usb' bus='0' device='4'/>
    </source>
    <mac address='00:11:22:33:44:55'/>
  </interface>

If the vendor/product form of usb specification is used, type='usb'
is implied:

  <interface type='hostdev'>
    <source>
      <vendor id='0x0012'/>
      <product id='0x24dd'/>
    </source>
    <mac address='00:11:22:33:44:55'/>
  </interface>

Again, the upcoming patch to fill in the backend of this functionality
will log an error and fail with "Unsupported Config" if you actually
try to assign a USB network adapter to a guest using <interface
type='hostdev'> - just use a standard <hostdev> entry in that case
(and also for single-port PCI adapters).
2012-03-05 23:24:28 -05:00
..
2011-04-01 16:03:11 -06:00
2011-04-01 16:03:11 -06:00
2009-11-06 16:05:18 +01:00
2012-02-23 16:02:33 -07:00
2011-10-29 19:50:48 +02:00
2009-09-22 12:55:39 +02:00
2009-12-03 15:27:24 +01:00
2011-03-28 10:40:24 +08:00
2012-02-29 12:27:12 +01:00
2011-08-26 17:52:55 +02:00
2011-02-18 08:59:51 +01:00
2011-04-01 16:03:11 -06:00
2009-09-22 12:55:39 +02:00
2009-07-16 15:06:42 +02:00
2009-04-15 20:42:50 +00:00
2009-04-15 20:42:50 +00:00
2009-04-15 20:42:50 +00:00
2011-10-28 10:07:45 +01:00
2011-04-01 16:03:11 -06:00
2012-02-13 22:31:31 +08:00
2009-07-29 09:04:21 +01:00
2011-01-28 08:44:05 -07:00
2011-05-11 08:18:04 -06:00
2011-04-01 16:03:11 -06:00