> > It couldn't be to serialize the
> > disconnects of multiple devices, because that is done with the
> > dev->serialize semaphore in the code which calls the disconnect
> > function.
That would be insufficient, as v4l devices need not be usb devices.
> You really have to talk to Oliver Neukem about this issue; he send me
> a patch and it sounded like a good idea. I don�t know much about the
> nitty-gritty inside the USB core and what gets locked and not.
>
> Second: does this bother you for some reason?
The problem is not really in the usb code but in the v4l code.
The v4l code is written under the impression that devices don't vanish.
The table of v4l devices is not locked. videodev_unregister() and open() race
unless both hold the BKL. For open() newer kernels hold it due to the common
v4l code. Any usb v4l device must hold the BKL while the device is put into a
state during which open() cannot be handled or while a v4l device is
unregistered.
Regards
Oliver
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel