[libvirt] [PATCH 1/2] Add VSCSI bus type and VSCSI controller type for pseries guest.
Paolo Bonzini
pbonzini at redhat.com
Thu Jun 7 15:42:06 UTC 2012
Il 07/06/2012 00:45, Eric Blake ha scritto:
> It sounds like we need <disk> address structure to support more than
> just drive addressing, but to instead support a union of addressing
> based on the type='' attribute.
No, we don't. The disk has a normal bus/target/unit address, like any
other SCSI disk.
>>>
>>> the address can be specified in the target.
>>>
>>> <disk type='file' device='disk'>
>>> <driver name='qemu' type='raw'/>
>>> <source file='/path/file'/>
>>> <target dev='sda' bus='scsi' address='spapr-vio'/>
>
> No, I don't think you want address added to <target>, but...
>
>>> <address type='drive' controller='0' bus='0' unit='0' />
>
> you instead want <address type='spapr-vio'/> to be something you add to
> your XML to force libvirt to then populate the remaining attributes and
> auto-instantiate the controller.
A simple
<disk type='file' device='disk'>
<driver name='qemu' type='raw'/>
<source file='/path/file'/>
<target dev='sda' bus='scsi'/>
<address type='drive' controller='0' bus='0' unit='0' />
</disk>
will do exactly what you want and add a default ibmvscsi controller.
More complex cases are handled with the controller element:
- giving a specific address to the controller:
<controller type='scsi' model='ibmvscsi'>
<address type='spapr-vio' ... />
</disk>
- using a PCI controller even with an sPAPR machine:
<controller type='scsi' model='virtio-scsi'>
<address type='pci' ... />
</disk>
- using both a vscsi and a PCI controller:
<disk type='file' device='disk'>
<driver name='qemu' type='raw'/>
<source file='/path/file'/>
<target dev='sda' bus='scsi'/>
<address type='drive' controller='0' bus='0' unit='0' />
</disk>
<disk type='file' device='disk'>
<driver name='qemu' type='raw'/>
<source file='/path/file'/>
<target dev='sdb' bus='scsi'/>
<address type='drive' controller='1' bus='0' unit='0' />
</disk>
<controller type='scsi' model='ibmvscsi'/>
<controller type='scsi' model='virtio-scsi'/>
(possibly with an spapr-vio and a pci address in the respective
controller elements).
Paolo
More information about the libvir-list
mailing list