
On 10/14/2013 11:29 AM, Viktor Mihajlovski wrote:
Certain device types are only identifiable uniquely via a device address from the guest's perspective. Adding or removing devices has the potential to change the address of other unrelated devices and impact the guest's operation. Therefore it is less desirable to rely on implicit device address allocation but rather to use persistent device addresses.
Depending on the device's bus type (PCI, SCSI, USB, CCW ...) the address specification format can vary, see also the libvirt domain XML documentation. To account for the various formats device addresses are specified with two array properties in the respective RASD classes: AddressProperties and AddressValues. The former contains a list of address property names and the latter the values.
E.g., a PCI address is specified by the properties domain, bus, slot and function. Therefore, for a PCI device RASD we could have:
AddressProperties = ['type', 'domain','bus', 'slot', 'function'] AddressValues = ['pci', '0x0000', '0x00', '0x01', '0x2']
resulting in a libvirt address element:
<address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x2'/>
Initially, we support only disk and network devices for KVM guests.
Signed-off-by: Viktor Mihajlovski <mihajlov@linux.vnet.ibm.com> --- schema/ResourceAllocationSettingData.mof | 12 ++++++++++++ 1 file changed, 12 insertions(+)
ACK John