Kernel crash when unplugging ExpressCard-to-USB adaptor

Bug #1073688 reported by John Lindgren
14
This bug affects 2 people
Affects Status Importance Assigned to Milestone
linux (Ubuntu)
Expired
High
Unassigned

Bug Description

This is a somewhat complex problem and seems to be the combination of two separate bugs, one present in 12.04 (kernel 3.2.0-32-generic) and another new in 12.10 (kernel 3.5.0-17-generic). The problem is seen when unplugging an Encore Electronics ENPUH-302 ExpressCard-to-USB adaptor, with a generic USB thumb drive attached, from a 64-bit Intel Atom system.

On 12.04, I see this message logged 20 seconds after removing the card: "xhci_hcd 0000:0b:00.0: Timeout while waiting for configure endpoint command". If I plug the card in again during that 20 seconds, it is not recognized (dmesg says only "pciehp 0000:00:1c.3:pcie04: Card present on Slot(35)").

On 12.10, the problem is worse. The same message ("Timeout while waiting ...") is logged 20 seconds after removing the card. If I plug the card in again during that 20 seconds, I see an additional message that was not printed in 12.04: "pciehp 0000:00:1c.3:pcie04: >Device 0000:0b:00.0 already exists at 0000:0b:00, cannot hot-add". If I then unplug the card, the kernel dumps a crash report (a page fault triggered by pci_stop_bus_device()) to the screen and the system freezes.

Attached are the following logs:

12.04/dmesg-boot.log: dmesg output when booting system with (Ubuntu 12.04)
12.04/dmesg-insert.log: dmesg output when plugging ExpressCard in-out-in-out (Ubuntu 12.04)
12.04/lspci-out.log: "lspci -tv" output without ExpressCard inserted (Ubuntu 12.04)
12.04/lspci-in.log: "lspci -tv" output with ExpressCard inserted (Ubuntu 12.04)
12.10/dmesg-boot.log: dmesg output when booting system with (Ubuntu 12.10)
12.10/dmesg-insert.log: dmesg output when plugging ExpressCard in-out-in (Ubuntu 12.10)
12.10/lspci-out.log: "lspci -tv" output without ExpressCard inserted (Ubuntu 12.10)
12.10/lspci-in.log: "lspci -tv" output with ExpressCard inserted (Ubuntu 12.10)
12.10/kernel-dump.png: snapshot of monitor showing kernel crash dump (Ubuntu 12.10)

The testing system is the following Kontron COM on a custom board:
http://us.kontron.com/products/computeronmodules/com+express/com+express+compact/comecpv2.html

Let me know if you need any more info.

John Lindgren
---
Architecture: amd64
DistroRelease: Ubuntu 12.10
MarkForUpload: True
Package: linux (not installed)
ProcEnviron:
 TERM=xterm
 PATH=(custom, no user)
Uname: Linux 3.5.0-17-generic x86_64
UserGroups:

Revision history for this message
John Lindgren (john-lindgren) wrote :
  • Logs Edit (161.9 KiB, application/x-tar)
Revision history for this message
Brad Figg (brad-figg) wrote : Missing required logs.

This bug is missing log files that will aid in diagnosing the problem. From a terminal window please run:

apport-collect 1073688

and then change the status of the bug to 'Confirmed'.

If, due to the nature of the issue you have encountered, you are unable to run this command, please add a comment stating that fact and change the bug status to 'Confirmed'.

This change has been made by an automated script, maintained by the Ubuntu Kernel Team.

Changed in linux (Ubuntu):
status: New → Incomplete
tags: added: precise
tags: added: apport-collected
description: updated
Revision history for this message
John Lindgren (john-lindgren) wrote :
Download full text (4.9 KiB)

# apport-collect 1073688

*** Collecting problem information

The collected information can be sent to the developers to improve the
application. This might take a few minutes.
.ERROR: hook /usr/share/apport/general-hooks/ubuntu.py crashed:
Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/apport/report.py", line 195, in _run_hook
    exec(compile(fd.read(), hook, 'exec'), symb)
  File "/usr/share/apport/general-hooks/ubuntu.py", line 17, in <module>
    import apport.hookutils
  File "/usr/lib/python2.7/dist-packages/apport/hookutils.py", line 29, in <module>
    from gi.repository import Gio, GLib
ImportError: No module named gi.repository
ERROR: hook /usr/share/apport/general-hooks/generic.py crashed:
Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/apport/report.py", line 195, in _run_hook
    exec(compile(fd.read(), hook, 'exec'), symb)
  File "/usr/share/apport/general-hooks/generic.py", line 15, in <module>
    import apport.hookutils, apport.fileutils
  File "/usr/lib/python2.7/dist-packages/apport/hookutils.py", line 29, in <module>
    from gi.repository import Gio, GLib
ImportError: No module named gi.repository
ERROR: hook /usr/share/apport/package-hooks/source_linux.py crashed:
Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/apport/report.py", line 195, in _run_hook
    exec(compile(fd.read(), hook, 'exec'), symb)
  File "/usr/share/apport/package-hooks/source_linux.py", line 18, in <module>
    import apport.hookutils
  File "/usr/lib/python2.7/dist-packages/apport/hookutils.py", line 29, in <module>
    from gi.repository import Gio, GLib
ImportError: No module named gi.repository
...

*** Send problem report to the developers?

After the problem report has been sent, please fill out the form in the
automatically opened web browser.

What would you like to do? Your options are:
  S: Send report (0.1 KB)
  V: View report
  K: Keep report file for sending later or copying to somewhere else
  I: Cancel and ignore future crashes of this program version
  C: Cancel
Please choose (S/V/K/I/C): v

*** Collecting problem information

The collected information can be sent to the developers to improve the
application. This might take a few minutes.
.ERROR: hook /usr/share/apport/general-hooks/ubuntu.py crashed:
Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/apport/report.py", line 195, in _run_hook
    exec(compile(fd.read(), hook, 'exec'), symb)
  File "/usr/share/apport/general-hooks/ubuntu.py", line 17, in <module>
    import apport.hookutils
  File "/usr/lib/python2.7/dist-packages/apport/hookutils.py", line 29, in <module>
    from gi.repository import Gio, GLib
ImportError: No module named gi.repository
ERROR: hook /usr/share/apport/general-hooks/generic.py crashed:
Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/apport/report.py", line 195, in _run_hook
    exec(compile(fd.read(), hook, 'exec'), symb)
  File "/usr/share/apport/general-hooks/generic.py", line 15, in <module>
    import apport.hookutils, apport.fileutils
  File "/usr/lib/python2.7/dist-packages/apport/hookutils.py", line 29, in <mo...

Read more...

Changed in linux (Ubuntu):
status: Incomplete → Confirmed
Revision history for this message
Joseph Salisbury (jsalisbury) wrote :

Would it be possible for you to test the latest upstream kernel? Refer to https://wiki.ubuntu.com/KernelMainlineBuilds . Please test the latest v3.7 kernel[0] (Not a kernel in the daily directory) and install both the linux-image and linux-image-extra .deb packages.

Once you've tested the upstream kernel, please remove the 'needs-upstream-testing' tag. Please only remove that one tag and leave the other tags. This can be done by clicking on the yellow pencil icon next to the tag located at the bottom of the bug description and deleting the 'needs-upstream-testing' text.

If this bug is fixed in the mainline kernel, please add the following tag 'kernel-fixed-upstream'.

If the mainline kernel does not fix this bug, please add the tag: 'kernel-bug-exists-upstream'.

If you are unable to test the mainline kernel, for example it will not boot, please add the tag: 'kernel-unable-to-test-upstream'.
Once testing of the upstream kernel is complete, please mark this bug as "Confirmed".

Thanks in advance.

[0] http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.7-rc4-raring/

Changed in linux (Ubuntu):
importance: Undecided → Medium
importance: Medium → High
status: Confirmed → Incomplete
tags: added: needs-upstream-testing
Revision history for this message
John Lindgren (john-lindgren) wrote :

Kernel 3.7-rc4 behaves exactly the same as 3.5.0-17.

tags: added: kernel-bug-exists-upstream
removed: needs-upstream-testing
Changed in linux (Ubuntu):
status: Incomplete → Confirmed
Revision history for this message
rduke15 (rduke15) wrote :

Same problem, or similar enough to likely have the same cause:

Total system freeze when unplugging an expresscard (sata_sil24). No mouse, no keyboard, no error. Screen remains visible, but doesn't update. Needs hard reset.

I had an eSATA drive connected through the Expresscard eSATA adapter. Unmounted the drive, powered down drive enclosure, disconnected esata cable, then finally removed the expresscard. The logs (syslog and kern.log) only show:

Dec 9 13:04:48 x200s kernel: [186036.733409] ata5: exception Emask 0x10 SAct 0x0 SErr 0x80000 action 0xe frozen
Dec 9 13:04:48 x200s kernel: [186036.733420] ata5: irq_stat 0x00100010, PHY RDY changed
Dec 9 13:04:48 x200s kernel: [186036.733428] ata5: SError: { 10B8B }
Dec 9 13:04:48 x200s kernel: [186036.733439] ata5: hard resetting link
Dec 9 13:04:50 x200s kernel: [186038.812104] ata5: SATA link down (SStatus 0 SControl 0)

Nothing else. Next line is the normal boot message after the hard reset: "kernel: imklog 5.8.6, log source = /proc/kmsg started."

$ uname -a
Linux x200s 3.2.0-34-generic #53-Ubuntu SMP Thu Nov 15 10:48:16 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux

Revision history for this message
penalvch (penalvch) wrote :

John Lindgren, could you please confirm this issue exists with the latest development release of Ubuntu? ISO images are available from http://cdimage.ubuntu.com/daily-live/current/ . If the issue remains, could you please run the following command in the development release from a Terminal (Applications->Accessories->Terminal), as it will automatically gather and attach updated debug information to this report:

apport-collect -p linux <replace-with-bug-number>

Also, could you please test the latest upstream kernel available following https://wiki.ubuntu.com/KernelMainlineBuilds ? It will allow additional upstream developers to examine the issue. Please do not test the daily folder, but the one all the way at the bottom. Once you've tested the upstream kernel, please comment on which kernel version specifically you tested. If this bug is fixed in the mainline kernel, please add the following tags:
kernel-fixed-upstream
kernel-fixed-upstream-VERSION-NUMBER

where VERSION-NUMBER is the version number of the kernel you tested. For example:
kernel-fixed-upstream-v3.11-rc4

This can be done by clicking on the yellow circle with a black pencil icon next to the word Tags located at the bottom of the bug description. As well, please remove the tag:
needs-upstream-testing

If the mainline kernel does not fix this bug, please add the following tags:
kernel-bug-exists-upstream
kernel-bug-exists-upstream-VERSION-NUMBER

As well, please remove the tag:
needs-upstream-testing

If you are unable to test the mainline kernel, please comment as to why specifically you were unable to test it and add the following tags:
kernel-unable-to-test-upstream
kernel-unable-to-test-upstream-VERSION-NUMBER

Once testing of the upstream kernel is complete, please mark this bug's Status as Confirmed. Please let us know your results. Thank you for your understanding.

tags: added: needs-kernel-logs needs-upstream-testing regression-potential
Changed in linux (Ubuntu):
status: Confirmed → Incomplete
Revision history for this message
Launchpad Janitor (janitor) wrote :

[Expired for linux (Ubuntu) because there has been no activity for 60 days.]

Changed in linux (Ubuntu):
status: Incomplete → Expired
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Bug attachments

Remote bug watches

Bug watches keep track of this bug in other bug trackers.