On Fri 04 May 2012 05:55:46 PM CST, Daniel P. Berrange wrote:
On Fri, May 04, 2012 at 05:49:54PM +0800, Li Zhang wrote:
> On 05/04/2012 05:04 PM, Daniel P. Berrange wrote:
>> On Fri, May 04, 2012 at 10:05:13AM +0800, Li Zhang wrote:
>>> Now, there is only SCSI bus and controller type in libvirt.
>>> And when configuring VSCSI controller, it needs to configure
>>> the spapr-vio bus address type externally. It's a little
>>> inconvenient to configure the controller type.
>>>
>>> This patch is to add VSCSI bus type and VSCSI controller type.
>>> And handle with the problems when VSCSI and SCSI devices
>>> working together, by assign the even number to index of
>>> VSCSI controller and odd number to index of SCSI controller.
>>>
>>> And when the VSCSI controller is always assigned as SPAPRVIO
>>> bus address type and SCSI controller will be always assigned
>>> as PCI bus address, which is implemented according to the
>>> controllers' type.
>>>
>>> So when one disk is based on VSCSI controller, then assign
>>> the bus as 'vscsi', and one right VSCSI controller will be
>>> selected.
>>
>> I'm not at all convinced by this description that we need
>> a new controller type. At most we need a separate<address/>
>> type for the VSCSI controller under an existing SCSI controller
>> element.
>>
>
> The problem is that when using two kinds of SCSI controller,
> vscsi and scsi, which are based on different address type and
> model at the same time, it needs to specify the model and address
> type externally. And it's hard to find the right controller for
> disk to use, only by the 'sdx'.
Sure, but there's nothing special about s390 / vSCSI in that
respect. If you have a guest with a SATA controller and a
SCSI controller you have the same problem. If you have multiple
disk controllers assigned to the guest, and are adding a disk,
then you are responsible for providing an<address> element
for the disk to indicate which controller it should be added
to.
OK. I see. I will try that way.
The automagic guessing of controllers is only ever intended
to work in the simple case where you have 1 kind of controller
Got it. Thanks. :)
Daniel
--
Best Regards
Li
IBM LTC, China System&Technology Lab, Beijing