On Fri, Jun 10, 2016 at 15:11:02 +0200, Michal Privoznik wrote:
On 10.06.2016 10:57, Peter Krempa wrote:
> On Thu, Jun 09, 2016 at 17:02:42 +0200, Michal Privoznik wrote:
>> This is really simple, we just need to append the device into the
>> domain def and that's it.
>>
>> Signed-off-by: Michal Privoznik <mprivozn(a)redhat.com>
>> ---
>> src/qemu/qemu_driver.c | 10 +++++++++-
>> 1 file changed, 9 insertions(+), 1 deletion(-)
>>
>> diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c
>> index d7b65f1..0baf2c8 100644
>> --- a/src/qemu/qemu_driver.c
>> +++ b/src/qemu/qemu_driver.c
>
> [...]
>
>> @@ -7909,6 +7910,14 @@ qemuDomainAttachDeviceConfig(virDomainDefPtr vmdef,
>> dev->data.memory = NULL;
>> break;
>>
>> + case VIR_DOMAIN_DEVICE_REDIRDEV:
>> + redirdev = dev->data.redirdev;
>> +
>
> You need to check here that the VM has USB controllers defined.
> Otherwise loading of the resulting XML file will fail as there's a check
> in the parser.
I don't think I need to. I mean, qemuDomainAttachDeviceConfig() is
called only from qemuDomainAttachDeviceFlags(). Here, user given XML is
parsed by virDomainDeviceDefParse() which at its very end calls
virDomainDeviceDefValidate() which in turn calls
virDomainDeviceDefValidateInternal(). That brings us to patch 02/09
where I'm changing virDomainDeviceDefValidateInternal() so that it
validates redirdevs too.
Or have I missed something?
Erm. Apparently I forgot about the patches that I've pushed a few days
ago.