I have noticed the webcam on my SL510 Thinkpad to stop working in all applications such as cheese or skype. Tracked it down to the kernel. The last version it works with is 3.5.6. I have already reported this in all detail on the LKML. http://thread.gmane.org/gmane.linux.kernel/1378612 I don't think they're about to care but I thought for completeness' sake it should be documented here as well. Fully reproducable. Maybe someone has a better connection to the kernel developers than this ultra high traffic list offers. Hoping for the best, Stephan
It might be just me but I don't directly see your webcam in your PCI list, can you elaborate what entry that would be? Did you compile it as a module or into your kernel? What kernel option is that, which driver name is that? Does modprobing the kernel module works (if it's not built-in)? Are there any warnings / errors in the dmesg output? Please tell us these details and attach the dmesg output. --- --- --- --- !!! Only in case it is really not loading or loaded and broken, and not just absent: It might also worth it to place the bug report on http://bugzilla.kernel.org as that might get a bug wrangler or kernel developer there to look into it, whom might miss it or catch it too late in the LKML. Make sure you link to here as well as to the LKML, similarly you might link to both the Bugzilla bug and here on the LKML as well. And to make sure we can track upstream, you can link to Bugzilla here as well. Putting the formality aside, if you can find the last kernel on which this still worked and the first kernel where it broke this seems like a good candidate for doing a git bisect to find the offending patch. This will make it much easier for them to solve the problem and also allows you to revert the patch till it is fixed upstream (patch -p1 -R < offending.patch). Looking in LKML the most recent related patch I can find is http://thread.gmane.org/gmane.linux.kernel/1235158/focus=1238010 but that appears from the start of the year at around 3.1, so I guess the offending patch is going to be less obvious than something breaking in the webcam driver. Thanks in advance for reporting in the upstream Bugzilla and good luck with the git bisect if you're going down that road.
Seems I forgot to paste the Kernel git-bisect instructions, here they are: http://wiki.gentoo.org/wiki/Kernel_git-bisect
(In reply to comment #1) > It might be just me but I don't directly see your webcam in your PCI list, > can you elaborate what entry that would be? Did you compile it as a module > or into your kernel? What kernel option is that, which driver name is that? > Does modprobing the kernel module works (if it's not built-in)? Are there > any warnings / errors in the dmesg output? > Hi Tom, thanks for the response. The way I understand it, you don't see the cam in that output because it's not recognized. I thought it would be best to do the output of the kernel in question but was unsure if maybe it would be better to do it with a working one. Anyway, here's the modules loaded: hal9001 ~ # lsmod Module Size Used by uvcvideo 67819 1 videobuf2_vmalloc 2260 1 uvcvideo videobuf2_memops 2038 1 videobuf2_vmalloc sdhci_pci 9851 0 sdhci 22835 1 sdhci_pci iwlwifi 249347 0 videobuf2_core 19732 1 uvcvideo mmc_core 73626 1 sdhci r8169 51578 0 videodev 94587 3 uvcvideo,videobuf2_core lpc_ich 10529 0 mfd_core 2689 1 lpc_ich uhci_hcd 30618 0 I believe the one in question is 'videodev'. If I boot a non-working kernel those video related modules are not present. The config in those cases is pretty much the same. I use 'make oldconfig' to make sure. I will attach the current config and the one for 3.6.x > Please tell us these details and attach the dmesg output. > > --- --- --- --- > > !!! Only in case it is really not loading or loaded and broken, and not just > absent: > > It might also worth it to place the bug report on http://bugzilla.kernel.org > as that might get a bug wrangler or kernel developer there to look into it, > whom might miss it or catch it too late in the LKML. Make sure you link to > here as well as to the LKML, similarly you might link to both the Bugzilla > bug and here on the LKML as well. And to make sure we can track upstream, > you can link to Bugzilla here as well. Arg, blast! And there was me thinking the kernel doesn't have a bugzilla. Shame on me. I was googling on how to report kernel bugs and found a page describing on how to do that on the lkml. I was astonished to find that they haven't got bugzilla but somehow bought it ;-) I will report this there and add info here if something happens. The git-bisect is something for misty autumn days but I'm not sure I find the time. Thanks, Stephan
Created attachment 327482 [details] Config for the latest kernel with working camera
Created attachment 327484 [details] Config for 3.6.x with non-working camera
All right, I have filed upstream under: https://bugzilla.kernel.org/show_bug.cgi?id=49621 HTH, Stephan
Created attachment 327486 [details] Diff of what's removed between working and not working kernel. > If I boot a non-working kernel those video related modules are not present. See this attachment, it appears a lot of video related options are no longer selected in your kernel. For instance the lines explain the lack of modules: -CONFIG_VIDEO_DEV=m -CONFIG_VIDEOBUF2_CORE=m -CONFIG_VIDEOBUF2_MEMOPS=m -CONFIG_VIDEOBUF2_VMALLOC=m -CONFIG_USB_VIDEO_CLASS=m As these map to videodev, the three videobuf2 and the uvcvideo modules.
Indeed. Gees, I feel stupid right now. I always use 'make oldconfig'. Have been for many years and it never happened that stuff disappeared that I needed. Something must have messed up. Anyway, I just redid the make oldconfig step with 3.6.2 and build a kernel and the webcam is there. Everything as it should be. Please accept my apologies for not having checked the obvious. I close that one as invalid. How I could fail a step like that which I've been doing so many times is a mystery to me. Maybe age or something. Anyway, thanks a bunch for your help! Stephan
I don't think it's just you as I don't have these options either, even not marked as "not set", so it _might_ have been removed in some way or it's a big that causes them to no longer be present. But well, time will tell. At least we learned a slight bit, have used a `diff -u old new | grep -e '-config'` to obtain that difference.