Well, I found something. After 13 kernel builds (not counting working
around broken commits several times) and countless reboots, I found
myself staring at this as the culprit:

commit e1620d591a75a10b15cf61dbf8243a0b7e6731a2
Author: Rafael J. Wysocki <[email protected]>
Date:   Fri Mar 18 19:55:36 2011 +0100

    USB: Move runtime PM callbacks to usb_device_pm_ops
    
    USB defines usb_device_type pointing to usb_device_pm_ops that
    provides system-wide PM callbacks only and usb_bus_type pointing to
    usb_bus_pm_ops that provides runtime PM callbacks only.  However,
    the USB runtime PM callbacks may be defined in usb_device_pm_ops
    which makes it possible to drop usb_bus_pm_ops and will allow us
    to consolidate the handling of subsystems by the PM core code.
    
    Signed-off-by: Rafael J. Wysocki <[email protected]>
    Acked-by: Greg Kroah-Hartman <[email protected]>

I actually went back and started testing several of the earlier steps in
the bisection because I couldn't believe this was the issue, since the
commit looked completely irrelevant. Maybe I'd not tested thoroughly
enough and falsely labeled as "good" one of the "bad" commits. But then
I looked more closely at the patch associated with this commit, and
decided to play around with some settings.

With USB power management turned on in the current kernel (default in
3.2.0-25), all I have to do is run guvcview once after plugging in the
webcam, close guvcview, wait at least two seconds (which is the default
autosuspend idle-delay time), then open guvcview again. Voila! Bug
reproduced.

However, if I turn off USB power management), then this issue is no
longer reproducible. I do this by running "echo -1 >
/sys/module/usbcore/parameters/autosuspend" as root.  I have not yet
found a way to turn off autosuspend for just the webcam, but this
appears to be a (somewhat sledgehammer-ish) workaround.

So... now what? Have I found a kernel bug, or just a bug in the webcam
firmware tickled by a legitimate change in the kernel code?  If the
latter, then is there a way to indicate that this particular webcam is
not compatible with USB autosuspend as implemented now?

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1017072

Title:
  046d:08c1 Regression: Quickcam Fusion doesn't work after first time

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1017072/+subscriptions

-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to