2010/3/17 Daniel P. Berrange <berrange(a)redhat.com>:
On Wed, Mar 17, 2010 at 05:17:38PM +0100, Matthias Bolte wrote:
> 2010/3/15 Daniel P. Berrange <berrange(a)redhat.com>:
>
> So I withdraw this patch and rework the controller type handling to
> use the <controller> element.
>
> There seems to be no documentation about the <controller> element on
> the libvirt website, or do I miss something?
That is correct :-(
As an example, if you had two SCSI controllers & one IDE controller, you'd
get XML like
<controller type='scsi' index='0'/>
<controller type='scsi' index='1'/>
<controller type='ide' index='0'/>
Where do I put the buslogic, lsilogic or lsisas1068 here? Looks like I
have to extend the domain XML here.
Inside the <disk> element, you link to a controller based on
its index,
using the <address> element type. If you omit '<address>' it is
calculated
from the target dev name, eg sdj corresponds to controller 1, unit 2. The
automatic calculation assumes only one bus per controller.
This automatic calculation assumes 7 units per SCSI controller. ESX
allows 16 units per controller with the controller itself being unit
7. As the automatic calculation is part of the domain XML parsing
process, I'm not sure what to do here.
<disk type='file' device='disk'>
<source file='/home/berrange/output.img'/>
<target dev='sdj' bus='scsi'/>
<address type='drive' controller='1' bus='0'
unit='2'/>
What's supposed to happen when both (target dev and address) are
given, but mismatch? I assume that should raise an error.
Matthias