Summary: | app-emulation/qemu with sys-fs/eudev - USB device detection fails | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Francesco Turco <fturco> |
Component: | [OLD] Core system | Assignee: | Doug Goldstein (RETIRED) <cardoe> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | eudev, qemu+disabled |
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | AMD64 | ||
OS: | Linux | ||
See Also: | https://bugs.gentoo.org/show_bug.cgi?id=499236 | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- |
Description
Francesco Turco
2013-12-21 11:35:40 UTC
Please also see: https://bugs.launchpad.net/qemu/+bug/1263318 I tried eudev-1.4, but I get the same problem as with 1.3. Instead of device_add, could you try > -device usb-host,vendorid=0x041e,productid=0x4088,bus=ehci.0 Also, do you have these USE flags: > app-emulation/qemu usb > dev-libs/libusbx udev ? app-emulation/qemu already had "usb" flag enabled. dev-libs/libusbx had "udev" flag disabled, I now enabled it, but I don't know if the problem depends on this. I tried running qemu with the -device option you told me to use, but it says me: libusbx: error [_get_usbfs_fd] libusbx couldn't open USB device /dev/bus/usb/001/003: Permission denied libusbx: error [_get_usbfs_fd] libusbx requires write access to USB device nodes. That device file is owned by root: ls -l /dev/bus/usb/001/003 crw-rw-r-- 1 root root 189, 2 Jan 25 15:53 /dev/bus/usb/001/003 If I run qemu via the root user I'm able to use the webcam without problems, but of course this is not recommended. It could be a problem related to udev rules, but I have absolutely no experience with them. I think I fixed the problem. It seems the "udev" USE flag for libusbx doesn't matter at all. I noticed instead that udev had a rule that eudev hadn't: 40-gentoo.rules. The relevant content is: SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", GROUP="usb" With this rule everything works correctly. No need to run QEMU via the root user. I'm closing this bug but I think I will report another one because it is not so clear to me why eudev doesn't come with this rule enabled by default. |