Try the following:
modprobe uvcvideo nodrop=1 timeout=6000
and if that works, just make the changes permanent by editing /etc/modprobe.d/modprobe.conf
Try to increase the waiting time to a ridiculously large number. This should fix the problem, or at least it worked for me. It is simple that calling select does not return ready descriptors, and this can be caused by a video driver or device.
If that doesn't work,
Enable module tracing:
sudo echo 0xffff > /sys/module/uvcvideo/parameters/trace
Run the program until an error is found, and stop it as soon as possible. Then disable tracing:
sudo echo 0 > /sys/module/uvcvideo/parameters/trace
Search with dmesg for error messages.
user883128
source share