Comment 17 for bug 144745

Revision history for this message
Stefan Bader (smb) wrote : Re: Webcam detected, but not working - Bad module

OK, I digged quite a bit. The solution is probably a bit more complex than it seems. To blacklist a module by default can always break a working system for somebody else. The fact that another driver is better for one device does not mean it is useless. For zc0301 this seems small since there is only one ID which is not handled by the gspca driver, but for sn9c102 there would be 27...

The problem seems really to lie within the loading order. As Peng Deng noted, on one computer it is ok, on another it isn't. I am quite sure the order is defined by modules.usbmap and I could see that the order of the elements there were different on two computers I checked. The gspca driver comes with ubuntu modules and modules there should have precedence over modules in the kernel. There is a configuration file which declares a search order (/etc/depmod.d/ubuntu.conf) in that way. But that did not seem to matter.
In fact the current code of depmod only uses this order when two modules have the same name (which is not the case here). I think the problem can be fixed by changing depmod to scan directories in the order defined, so that ID's of modules under ubuntu are listed before the ones under kernel.

To test this I created updated versions of depmod. Could someone (after saving the original) replace the depmod command with the updated version and check whether (after depmod -a) the behaviour changes?