On Nov 26, 2020, at 9:42 AM, Daniel P. Berrangé
<berrange(a)redhat.com> wrote:
You ought to pass def->controllers[i] into this method and validate
as many properties as practical. At very least validate the model
and report VIR_ERR_CONFIG_UNSUPPORTED for any you can't emulate.
Hyper-V's SCSI controllers are paravirtualized ("synthetic" in Hyper-V
terms). I've been omitting the model setting from my XML files.
I can think of three options for how to handle this:
1. only support VIR_DOMAIN_CONTROLLER_MODEL_SCSI_DEFAULT
2. support VIR_DOMAIN_CONTROLLER_MODEL_SCSI_DEFAULT and
VIR_DOMAIN_CONTROLLER_MODEL_SCSI_AUTO
3. add VIR_DOMAIN_CONTROLLER_MODEL_SCSI_HYPERV and support
VIR_DOMAIN_CONTROLLER_MODEL_SCSI_HYPERV,
VIR_DOMAIN_CONTROLLER_MODEL_SCSI_DEFAULT, and
VIR_DOMAIN_CONTROLLER_MODEL_SCSI_AUTO
Adding another virDomainControllerModelSCSI seems unnecessary to me
because Hyper-V doesn't support emulating any SCSI controllers; it only
has its paravirtualized SCSI functionality.
Which do you recommend?
Probably ought to reject any info->type which is not
VIR_DOMAIN_ADDRESS_TYPE_NONE, since you're not attempting todo
any device addressing at this time.
There are no address settings for Hyper-V SCSI controllers, so this
will always be the case. I'll report an error if address settings are
provided.
Thanks!
Matt