Open daniel-ayers opened 6 years ago
Duplicate of #4035
This appears to be a duplicate of an existing issue. If you believe this is not really a duplicate, please leave a comment briefly explaining why. We'll be happy to take another look and, if appropriate, reopen this issue. Thank you.
I reviewed that issue prior to opening this one. I did not think this was a duplicate because there is a clear difference - in https://github.com/QubesOS/qubes-issues/issues/4035 the camera can be attached to a VM (the problem there is it doesn't work and later disappears). In this issue, the camera never appears in dom0 lsusb or the Device Widget.
I don't know enough about the inner workings of Qubes to say whether this is a duplicate or not, but I wanted to point out that there is a clear difference in the reported issue.
Clarification: the camera never appears in qvm-usb either, and since it never appears in any of the tools that can be used to assign it to a VM is cannot be assigned to a VM.
Might be a localized hardware issue, but I'll reopen for now.
I hope to contribute with additional details to this issue. In my case I attach an external USB camera and observe the same behavior:
Here's my dmesg log of dom0, which shows that something happens when plugging the USB camera in and out:
Plugging in: [Sat Feb 20 13:02:49 2021] usb 2-2.4: new high-speed USB device number 5 using xhci_hcd [Sat Feb 20 13:02:49 2021] usb 2-2.4: New USB device found, idVendor=13d3, idProduct=784b, bcdDevice= 5.14 [Sat Feb 20 13:02:49 2021] usb 2-2.4: New USB device strings: Mfr=1, Product=2, SerialNumber=0 [Sat Feb 20 13:02:49 2021] usb 2-2.4: Product: Integrated Camera [Sat Feb 20 13:02:49 2021] usb 2-2.4: Manufacturer: FLH-BY-0309-200514 [Sat Feb 20 13:02:49 2021] mc: Linux media interface: v0.10 [Sat Feb 20 13:02:49 2021] videodev: Linux video capture interface: v2.00 [Sat Feb 20 13:02:49 2021] uvcvideo: Found UVC 1.00 device Integrated Camera (13d3:784b) [Sat Feb 20 13:02:49 2021] uvcvideo: Failed to query (GET_INFO) UVC control 3 on unit 1: -32 (exp. 1). [Sat Feb 20 13:02:49 2021] input: Integrated Camera: Integrated C as /devices/pci0000:00/0000:00:14.0/usb2/2-2/2-2.4/2-2.4:1.0/input/input36 [Sat Feb 20 13:02:49 2021] usbcore: registered new interface driver uvcvideo [Sat Feb 20 13:02:49 2021] USB Video Class driver (1.1.1) Plugging out: [Sat Feb 20 13:04:39 2021] usb 2-2.4: USB disconnect, device number 5
While plugged in lsusb detects the USB camera (qvm-usb does not show the device): $ lsusb Bus 002 Device 007: ID 13d3:784b IMC Networks
Here's my dmesg log of dom0
To use qvm-usb, you need to create USB qube: https://www.qubes-os.org/doc/usb-qubes/
To use qvm-usb, you need to create USB qube
Yes, obviously (I should have skipped the qvm-usb part in my comment...) My understanding: Without sys-usb all USB device should arrive in dom0, displayed in the Devices Widget and can be attached to qubes (I know that for security a sys-usb qube, immediately taking care of new USB devices, is necessary to avoid attaching devices directly to dom0). In my (non-secure) setup without sys-usb, which I assume could be the same as the author of this issue, I see all USB devices I tried appearing in the Device Widget, allowing me to attach them to qubes; except for this USB camera. I just hoped to help with the dmesg logs as possible hints.
This issue is being closed because:
If anyone believes that this issue should be reopened and reassigned to an active milestone, please leave a brief comment. (For example, if a bug still affects Qubes OS 4.1, then the comment "Affects 4.1" will suffice.)
Affects 4.2 The internal Webcam works in Dom0(after allowing using USBguard) but won't show up in the device widget. Lenovo Legion 5 Pro HCL and cpio files https://forum.qubes-os.org/t/lenovo-legion-5-pro-16ach6h-82jq/23559
Affects 4.2 The internal Webcam works in Dom0(after allowing using USBguard) but won't show up in the device widget.
this is by design / as intended. if you want to pass around USB devices, connect them to a USB controller attached to a USB-VM like sys-usb. see: https://github.com/QubesOS/qubes-issues/issues/4346#issuecomment-782630339
(and afair, with the 16ach6h, that is a problem... but a very separate problem from this old issue.)
I did create a sys-usb and passed the appropriate usb controller where the internal webcam is hardwired and tried everything I could I found on google.
I allowed the device on dom0 to check whether it's a driver related issue, the webcam works fine in dom0, used cheese.
But the internal webcam won't show in device widget but other devices on the same controller do show and have no problem with passthrough to other VM's.
That's why I replied on the thread.
(and afair, with the 16ach6h, that is a problem... but a very separate problem from this old issue.)
Can you tell about the problem with 16ach6h a bit maybe it will help me to troubleshoot a bit.
I did create a sys-usb and passed the appropriate usb controller where the internal webcam is hardwired and tried everything I could I found on google. I allowed the device on dom0 to check whether it's a driver related issue, the webcam works fine in dom0, used cheese.
if the usb device still shows up in dom0, the usb controller it is attached to is still in dom0, not in sys-usb. please doublecheck all your usb-controller PCI devices are passed to sys-usb. and i recommend you disable sys-usb autostart, because ...
Can you tell about the problem with 16ach6h a bit maybe it will help me to troubleshoot a bit.
... i am pretty sure we had an unsolved 16ach6h support case in qubes chat last week where the machine did a hard reboot every time sys-usb started.
if the usb device still shows up in dom0, the usb controller it is attached to is still in dom0, not in sys-usb. please doublecheck all your usb-controller PCI devices are passed to sys-usb. and i recommend you disable sys-usb autostart, because ...
The device to which the USB controller belongs to is attached to sys-usb, the other HID devices and block devices on the controller are working fine except the webcam and I can rule out the driver problem as it is working fine in dom0. Problem being it's not showing up in the device widget.
... i am pretty sure we had an unsolved 16ach6h support case in qubes chat last week where the machine did a hard reboot every time sys-usb started.
Yes, I had encountered that problem when installing qubes v4.0rc3, v4.0rc4 and v4 stable and the first boot crashed at creation and starting up of sys-usb which could be mitigated by adding the kernel option to skip_autostart in grub boot menu or not creating the sys-usb at firstboot.
Just a suggestion that there should be an option for selecting the usb controllers to attach when creating the sys-usb at first boot.
So there are two pci usb controllers in 16ach6h the system crashes when attaching one of them to sys-usb and there's no logs as the system crashes so no way to debug that easily, my guess would be that the faulty usb controller is attached to some critical cpu related component hence the system crash. Or maybe some misconfiguration in the device configuration in mainline linux.
Did you check the HCL report it's in plain text and the thread is where detailed. And all the system info is available in the cpio archive, do check that out.
And yeah the webcam controller is the one attached to sys-usb but not showing up in the device widget.
I'm on the qubes IRC channel if you need to get some additional info or run some test on the device.
Just a suggestion that there should be an option for selecting the usb controllers to attach when creating the sys-usb at first boot.
In the common case where there is only 1 USB controller I don’t think this is needed, but if there is more than one controller this would be an amazing idea. There are multiple good reasons to keep a controller in dom0:
Qubes OS version:
R4.0 (with current dom0 updates)
Affected component(s):
Unknown
Steps to reproduce the behavior:
Install and boot R4.0 on an HP laptop with USB-connected camera (USB 04f2:b51d)
Verify that device is listed in
lsusb -v
in dom0.Verify that device is listed in
qvm-usb
in dom0 and in Devices Widget.Attempt to connect camera to a Qube for video conferencing.
Expected behavior:
Device is listed in
lsusb -v
as follows:Device is also listed in
qvm-usb
output and shown in Device Widget.Device can be connected to Qube and works for video conferencing.
Actual behavior:
Device is shown in
lsusb -v
as above.Device is not listed in
qvm-usb
(output is blank apart from header line).Device is not shown in Devices Widget (but microphone and block devices are).
General notes:
Related issues: