Red Hat Bugzilla – Bug 546501
gphoto2 remote capture fails with Kernel Opps and freezes machine
Last modified: 2010-12-03 20:49:37 EST
Created attachment 377647 [details]
Fedora 12 Gphoto2 kernel Oops dmesg Output
Description of problem:
Remote capture with gphoto2 fails with Kernel Oops and freezes the machine.
I installed kernel-debug to try and zero in on the problem. For some weird reason while the fault is always reproducible in the "regular" Kernel the issue doesn't manifest itself at all when running the Debug Kernel.
1. dmesg output (fc12_kernel_oops_dmesg_output)
2. /var/log/messages output (fc12_kernel_oops_var_log_messages)
3. gphoto2 debug log (fc12_kernel_oops_gphoto2_debug_output.tar.bz2).
Version-Release number of selected component (if applicable):
How reproducible: always. The issue may occur anywhere from after 5 remote captures attempts up to 60 remote captures attempt but always "guaranteed" to fail within this range.
Steps to Reproduce:
1. Install FC12 and update the system to make sure it is up to date.
2. Install gphoto2 (if it is not already installed)
4. Set some parameters on the camera to make sure we can talk to it ok:
gphoto2 --set-config capture=on --set-config capturetarget=0 --set-config iso=0 --set-config ownername=mymiamiview.com --set-config zoom=60
5. Capture an image and download it:
gphoto2 --capture-image-and-download --force-overwrite --filename=image.jpg
6. Repeat (anywhere from 5 to 60 times) until the Kernel Oops is observed
Actual results: Kernel Oops and the machine freezes.
Expected results: successful remote capture and image download time after time
Additional info: Various excerpts from the logs:
Dec 10 11:31:31 localhost kernel: BUG: sleeping function called from invalid context at arch/x86/mm/fault.c:1069
Dec 10 11:31:31 localhost kernel: Pid: 2767, comm: gphoto2 Tainted: P W 220.127.116.11-162.fc12.i686.PAE #1
Dec 10 11:31:31 localhost kernel: BUG: unable to handle kernel NULL pointer dereference at 000000f7
Dec 10 11:31:31 localhost kernel: Fixing recursive fault but reboot is needed!
Created attachment 377649 [details]
Fedora 12 Gphoto2 kernel Oops /var/log/messages Output
Created attachment 377650 [details]
Fedora 12 kernel Oops gphoto2 debug output
I'm seeing exactly the same problem. However, the problem seems to only occur on one of my F12 machines. I'll try to come up with some more info later.
This looks like it might have something to do with our problem:
For anyone still affected by this issue, or any Googlers' stumbling on this, I have found a workaround just in case it helps. This device supports USB 2.0 (Canon PowerShot S2 IS). However, there seems to be an issue with the way ehci is interacting with the device which then causes the crash. Since now USB modules are compiled into the Kernel, I didn't find an easy way to disable ehci (without going through the hassle of compiling a Kernel from scratch) or an easy way (which works) to force only this particular USB device to use uhci (USB 1.0).
Instead, I simply plugged the device to a USB 1.0 HUB (i.e. an older hub which doesn't support usb 2.0) and that did the trick. The Camera snapped 1,000,000 images since then without the issue manifesting itself. Crude workaround (i know) but one which seems to work nonetheless. If you try this out, make sure to check your system log. You should see the camera is connecting through uhci_hcd as oppose to ehci_hcd.
This message is a reminder that Fedora 12 is nearing its end of life.
Approximately 30 (thirty) days from now Fedora will stop maintaining
and issuing updates for Fedora 12. It is Fedora's policy to close all
bug reports from releases that are no longer maintained. At that time
this bug will be closed as WONTFIX if it remains open with a Fedora
'version' of '12'.
Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version'
to a later Fedora version prior to Fedora 12's end of life.
Bug Reporter: Thank you for reporting this issue and we are sorry that
we may not be able to fix it before Fedora 12 is end of life. If you
would still like to see this bug fixed and are able to reproduce it
against a later version of Fedora please change the 'version' of this
bug to the applicable version. If you are unable to change the version,
please add a comment here and someone will do it for you.
Although we aim to fix as many bugs as possible during every release's
lifetime, sometimes those efforts are overtaken by events. Often a
more recent Fedora release includes newer upstream software that fixes
bugs or makes them obsolete.
The process we are following is described here:
Fedora 12 changed to end-of-life (EOL) status on 2010-12-02. Fedora 12 is
no longer maintained, which means that it will not receive any further
security or bug fix updates. As a result we are closing this bug.
If you can reproduce this bug against a currently maintained version of
Fedora please feel free to reopen this bug against that version.
Thank you for reporting this bug and we are sorry it could not be fixed.