Bug 546501 - gphoto2 remote capture fails with Kernel Opps and freezes machine
gphoto2 remote capture fails with Kernel Opps and freezes machine
Product: Fedora
Classification: Fedora
Component: kernel (Show other bugs)
i686 Linux
low Severity high
: ---
: ---
Assigned To: Kernel Maintainer List
Fedora Extras Quality Assurance
Depends On:
  Show dependency treegraph
Reported: 2009-12-10 21:17 EST by Arnav
Modified: 2010-12-03 20:49 EST (History)
6 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2010-12-03 20:49:37 EST
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)
Fedora 12 Gphoto2 kernel Oops dmesg Output (51.66 KB, application/octet-stream)
2009-12-10 21:17 EST, Arnav
no flags Details
Fedora 12 Gphoto2 kernel Oops /var/log/messages Output (18.18 KB, application/octet-stream)
2009-12-10 21:19 EST, Arnav
no flags Details
Fedora 12 kernel Oops gphoto2 debug output (187.93 KB, application/octet-stream)
2009-12-10 21:20 EST, Arnav
no flags Details

  None (edit)
Description Arnav 2009-12-10 21:17:51 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.

Attached are:
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):
gphoto2         2.4.7    
libgphoto2      2.4.7          
libgphoto2_port 0.8.0  

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 #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!
Comment 1 Arnav 2009-12-10 21:19:13 EST
Created attachment 377649 [details]
Fedora 12 Gphoto2 kernel Oops /var/log/messages Output
Comment 2 Arnav 2009-12-10 21:20:45 EST
Created attachment 377650 [details]
Fedora 12 kernel Oops  gphoto2 debug output
Comment 3 Andreas Petzold 2009-12-12 07:48:29 EST
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.
Comment 4 Andreas Petzold 2009-12-12 08:04:41 EST
This looks like it might have something to do with our problem:

Comment 5 Arnav 2010-09-02 08:27:19 EDT
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.
Comment 6 Bug Zapper 2010-11-03 23:39:12 EDT
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: 
Comment 7 Bug Zapper 2010-12-03 20:49:37 EST
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.

Note You need to log in before you can comment on or make changes to this bug.