
I've got libvirt-0.10.2-46 version. Alain VONDRA Chargé d'exploitation des Systèmes d'Information Direction Administrative et Financière +33 1 44 39 77 76 UNICEF France 3 rue Duguay Trouin 75006 PARIS www.unicef.fr -----Message d'origine----- De : Martin Polednik [mailto:mpolednik@redhat.com] Envoyé : vendredi 16 janvier 2015 17:11 À : VONDRA Alain Cc : users@ovirt.org; Michal Skrivanek Objet : Re: [ovirt-users] USB Modem in a VM ----- Original Message -----
From: "VONDRA Alain" <AVONDRA@unicef.fr> To: "Martin Polednik" <mpolednik@redhat.com> Cc: users@ovirt.org, "Michal Skrivanek" <mskrivan@redhat.com> Sent: Friday, January 16, 2015 4:00:28 PM Subject: RE: [ovirt-users] USB Modem in a VM
I've replaced with openReadOnly(0), but had a "argument 1 must be string or None, not int" issue, so I changed to None, but I had :
[root@unc-srv-hyp2 ~]$ python2.6 usb_dev.py Traceback (most recent call last): File "usb_dev.py", line 5, in <module> devices = conn.listAllDevices() TypeError: listAllDevices() takes exactly 2 arguments (1 given)
I put the VM name in openReadOnly("unc-srv-prnt3") and I had this issue :
libvirt: error : no connection driver available for unc-srv-prnt3 Traceback (most recent call last): File "usb_dev.py", line 4, in <module> conn = libvirt.openReadOnly("unc-srv-prnt3") File "/usr/lib64/python2.6/site-packages/libvirt.py", line 247, in openReadOnly if ret is None:raise libvirtError('virConnectOpenReadOnly() failed') libvirt.libvirtError: no connection driver available for unc-srv-prnt3
What's wrong ?
Missing flags parameter again, which version of libvirt are you running? openReadOnly(0) and listAllDevices(0) should be correct for your version, sorry for that again.
Alain VONDRA Chargé d'exploitation des Systèmes d'Information Direction Administrative et Financière +33 1 44 39 77 76 UNICEF France 3 rue Duguay Trouin 75006 PARIS www.unicef.fr
-----Message d'origine----- De : Martin Polednik [mailto:mpolednik@redhat.com] Envoyé : vendredi 16 janvier 2015 15:47 À : VONDRA Alain Cc : users@ovirt.org; Michal Skrivanek Objet : Re: [ovirt-users] USB Modem in a VM
----- Original Message -----
From: "VONDRA Alain" <AVONDRA@unicef.fr> To: "Martin Polednik" <mpolednik@redhat.com> Cc: users@ovirt.org, "Michal Skrivanek" <mskrivan@redhat.com> Sent: Friday, January 16, 2015 2:45:09 PM Subject: Re: [ovirt-users] USB Modem in a VM
Hi Martin, That's what I've done, but the result is a missing argument.
[root@unc-srv-hyp2 ~]$ python2.6 usb_dev.py Traceback (most recent call last): File "usb_dev.py", line 4, in <module> conn = libvirt.openReadOnly() TypeError: openReadOnly() takes exactly 1 argument (0 given
My mistake, you can use openReadOnly(0) (can be omitted for some libvirt versions).
Alain
Alain VONDRA Chargé d'exploitation des Systèmes d'Information Direction Administrative et Financière +33 1 44 39 77 76 UNICEF France 3 rue Duguay Trouin 75006 PARIS www.unicef.fr
-----Message d'origine----- De : Martin Polednik [mailto:mpolednik@redhat.com] Envoyé : vendredi 16 janvier 2015 13:18 À : VONDRA Alain Cc : users@ovirt.org; Michal Skrivanek Objet : Re: [ovirt-users] USB Modem in a VM
----- Original Message -----
From: "VONDRA Alain" <AVONDRA@unicef.fr> To: "Martin Polednik" <mpolednik@redhat.com> Cc: users@ovirt.org, "Michal Skrivanek" <mskrivan@redhat.com> Sent: Friday, January 16, 2015 12:30:10 PM Subject: Re: [ovirt-users] USB Modem in a VM
Ok Martin, I'll try the python script, but I'm a newbie in python, which argumenet I need to put to execute it ? Thank you Alain
Simply save it into something like listdevices.py and run $ python listdevices.py. It will list libvirt XML for all of the devices, you just need to find correct vendor id/product id for your usb device and then use the name for detach e.g. nodedev-detach usb_usb0.
Alain VONDRA Chargé d'exploitation des Systèmes d'Information Direction Administrative et Financière +33 1 44 39 77 76 UNICEF France 3 rue Duguay Trouin 75006 PARIS www.unicef.fr
-----Message d'origine----- De : Martin Polednik [mailto:mpolednik@redhat.com] Envoyé : vendredi 16 janvier 2015 12:18 À : VONDRA Alain Cc : Alon Bar-Lev; Michal Skrivanek; users@ovirt.org Objet : Re: [ovirt-users] USB Modem in a VM
----- Original Message -----
From: "VONDRA Alain" <AVONDRA@unicef.fr> To: "Martin Polednik" <mpolednik@redhat.com> Cc: "Alon Bar-Lev" <alonbl@redhat.com>, "Michal Skrivanek" <mskrivan@redhat.com>, users@ovirt.org Sent: Friday, January 16, 2015 12:10:35 PM Subject: RE: [ovirt-users] USB Modem in a VM
Hi, I'm sure of the device, it's clearer with lsusb, you see all the infos about the device :
Bus 001 Device 006: ID 0572:1321 Conexant Systems (Rockwell), Inc. Device Descriptor: bLength 18 bDescriptorType 1 bcdUSB 1.10 bDeviceClass 2 Communications bDeviceSubClass 0 bDeviceProtocol 0 bMaxPacketSize0 64 idVendor 0x0572 Conexant Systems (Rockwell), Inc. idProduct 0x1321 bcdDevice 1.00 iManufacturer 1 Conexant iProduct 2 USB Modem iSerial 3 24680246 bNumConfigurations 2 Configuration Descriptor: bLength 9 bDescriptorType 2 wTotalLength 73 bNumInterfaces 2 bConfigurationValue 1 iConfiguration 0 bmAttributes 0x80 (Bus Powered) MaxPower 100mA Interface Descriptor: bLength 9 bDescriptorType 4
With nodedev we just see device nodes, pretty difficult to identify, even with --tree opt :
usb_1_0_1_0 usb_1_1 usb_1_1_1_0 usb_1_1_4 usb_1_1_4_1_0 usb_1_1_4_1_1 usb_1_1_6 usb_1_1_6_1 usb_1_1_6_1_0 usb_1_1_6_1_1_0 usb_1_1_6_1_1_1 usb_1_1_6_1_1_2 usb_2_0_1_0 usb_2_1 usb_2_1_1_0 usb_usb1 usb_usb2
The issue is, you need to get libvirt name of the device and run the nodedev-detach - have you done that with no success?
If not, use some simple script such as (python)
import libvirt
conn = libvirt.openReadOnly() devices = conn.listAllDevices() for dev in devices: print dev.XMLDesc()
to easily find the device and use the <name> element for nodedev-detach call. That should handle unbinding it from the driver and possibly binding it to some usb stub if that exists. If that doesn't fix it, I admit that I'm not sure what could be the cause apart from OS/hw.
The xml injected is, I think right :
<hostdev mode='subsystem' type='usb' managed='yes'> <source> <vendor id='0x0572'/> <product id='0x1321'/> </source> </hostdev>
Even with The device on the VM xml, the device does'nt appears in the Windows VM. Regards Alain
Alain VONDRA Chargé d'exploitation des Systèmes d'Information Direction Administrative et Financière +33 1 44 39 77 76 UNICEF France 3 rue Duguay Trouin 75006 PARIS www.unicef.fr
-----Message d'origine----- De : Martin Polednik [mailto:mpolednik@redhat.com] Envoyé : vendredi 16 janvier 2015 11:37 À : VONDRA Alain Cc : Alon Bar-Lev; Michal Skrivanek; users@ovirt.org Objet : Re: [ovirt-users] USB Modem in a VM
----- Original Message -----
From: "VONDRA Alain" <AVONDRA@unicef.fr> To: "Alon Bar-Lev" <alonbl@redhat.com>, "Michal Skrivanek" <mskrivan@redhat.com> Cc: users@ovirt.org Sent: Thursday, January 15, 2015 10:33:19 PM Subject: Re: [ovirt-users] USB Modem in a VM
Hi, I've tried also to inject the device with virsh attach-device, all seems to work but nothing happen in the VM :
[root@unc-srv-hyp2 ~]$ virsh attach-device unc-srv-prnt3 usb-modem.xml Please enter your authentication name: root Please enter your password: Device attached successfully
What did I do wrong, any ideas ?
Hello, One possibility might be the fact that libvirt itself doesn't have managed mode for USB devices and I'm not sure virt-manager has the appropriate routine handled.
Could you try running $ virsh nodedev-list to find the correct usb device and then # virsh nodedev-detach the_usb_device or posibly nodedev-dettach if you run older libvirt?
After that, try starting VM with hostdev element added to XML.
Regards
Alain VONDRA Chargé d'exploitation des Systèmes d'Information Direction Administrative et Financière +33 1 44 39 77 76 UNICEF France 3 rue Duguay Trouin 75006 PARIS www.unicef.fr
________________________________________ De : Alon Bar-Lev [alonbl@redhat.com] Envoyé : jeudi 15 janvier 2015 21:23 À : VONDRA Alain; Michal Skrivanek Cc : users@ovirt.org Objet : Re: [ovirt-users] USB Modem in a VM
Michal, any clue?
----- Original Message -----
From: "VONDRA Alain" <AVONDRA@unicef.fr> To: "Alon Bar-Lev" <alonbl@redhat.com> Cc: users@ovirt.org Sent: Thursday, January 15, 2015 5:56:47 PM Subject: RE: [ovirt-users] USB Modem in a VM
Hi, Thank you for your answer, I've tried to insert my USB modem, but it doesn't up in the Windows VM. I've tried to insert via virt-manager without success, I can't apply the modification, however I see the modem using lsusb :
lsusb Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub Bus 002 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub Bus 001 Device 003: ID 0624:0248 Avocent Corp. Virtual Hub Bus 001 Device 004: ID 0624:0249 Avocent Corp. Virtual Keyboard/Mouse Bus 002 Device 010: ID 0572:1321 Conexant Systems (Rockwell), Inc.
I've unload the "cdc_acm" kernel module via rmmod without success. I've also tried to edit the xml appending the ID and VENDDOR tags :
<hostdev mode='subsystem' type='usb'> <source> <vendor id='0x0572'/> <product id='0x1321'/> </source> </hostdev>
Ut at the first load the config disappears... Do I need to restart the host or restart libvirtd services ?
Thanks for your help Alain
Alain VONDRA Chargé d'exploitation des Systèmes d'Information Direction Administrative et Financière +33 1 44 39 77 76 UNICEF France 3 rue Duguay Trouin 75006 PARIS www.unicef.fr
-----Message d'origine----- De : Alon Bar-Lev [mailto:alonbl@redhat.com] Envoyé : mardi 13 janvier 2015 17:47 À : VONDRA Alain Cc : users@ovirt.org Objet : Re: [ovirt-users] USB Modem in a VM
----- Original Message ----- > From: "VONDRA Alain" <AVONDRA@unicef.fr> > To: users@ovirt.org > Sent: Tuesday, January 13, 2015 5:55:01 PM > Subject: [ovirt-users] USB Modem in a VM > > > > Hi, > > Can you tell me if I can use an USB modem through one of the > hypervisor hosts to a Windows VM ? > > I’d like to install a Windows Fax Server. > > Thank you for your answers.
should be possible using qemu args: -usbdevice host:vendor_id:product_id
in libvirt replace @VENDOR@ and @DEVICE@ to device specific properties:
<domain type='kvm'> <name>...</name> … <devices> … <hostdev mode='subsystem' type='usb'> <source> <vendor id='0x@VENDOR@'/> <product id='0x@DEVICE@'/> </source> </hostdev> </devices> </domain>
if this option is not exposed in ui you can use vdsm-hooks[1] to modify the libvirt configuration and inject such device.
Regards, Alon
_______________________________________________ Users mailing list Users@ovirt.org http://lists.ovirt.org/mailman/listinfo/users
_______________________________________________ Users mailing list Users@ovirt.org http://lists.ovirt.org/mailman/listinfo/users
_______________________________________________ Users mailing list Users@ovirt.org http://lists.ovirt.org/mailman/listinfo/users