Commit 4ab8cd77 added a check requiring input devices to have a bus type of VIR_DOMAIN_INPUT_BUS_USB, failing to start the domain otherwise. But virDomainDefParseXML adds implicit mouse and keyboard if a graphics device is configured. See calls to virDomainDefMaybeAddInput. The regression is fixed by removing the check requiring USB input devices, and skipping non-USB input devices when populating USB 'usbdevice' in libxl_domain_build_info struct. Signed-off-by: Jim Fehlig <jfehlig@xxxxxxxx> --- src/libxl/libxl_conf.c | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/src/libxl/libxl_conf.c b/src/libxl/libxl_conf.c index 50ef9d8..2b57d0b 100644 --- a/src/libxl/libxl_conf.c +++ b/src/libxl/libxl_conf.c @@ -750,13 +750,6 @@ libxlMakeDomBuildInfo(virDomainDefPtr def, libxl_defbool_set(&b_info->u.hvm.sdl.enable, 0); if (def->ninputs) { - for (i = 0; i < def->ninputs; i++) { - if (def->inputs[i]->bus != VIR_DOMAIN_INPUT_BUS_USB) { - virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s", - _("libxenlight supports only USB input")); - return -1; - } - } #ifdef LIBXL_HAVE_BUILDINFO_USBDEVICE_LIST if (VIR_ALLOC_N(b_info->u.hvm.usbdevice_list, def->ninputs+1) < 0) return -1; @@ -769,6 +762,10 @@ libxlMakeDomBuildInfo(virDomainDefPtr def, #endif for (i = 0; i < def->ninputs; i++) { char **usbdevice; + + if (def->inputs[i]->bus != VIR_DOMAIN_INPUT_BUS_USB) + continue; + #ifdef LIBXL_HAVE_BUILDINFO_USBDEVICE_LIST usbdevice = &b_info->u.hvm.usbdevice_list[i]; #else -- 1.8.4.5 -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list