laptop crash after application make use of sierra modem

Bug #511157 reported by Waldemar Brodkorb
14
This bug affects 1 person
Affects Status Importance Assigned to Milestone
linux (Ubuntu)
Medium
Unassigned

Bug Description

Hi,

I am using Ubuntu/Lucid on a IBM/Lenovo Thinkpad T61. A umts usb modem from Sierra Wireless is integrated.
When I use a application, which make use of the CnS device (ttyUSB1) my laptop crash. Unfortunately my application
crash with a segmentation fault after a few seconds after starting. A few seconds later the laptop crashes completely.

This is the output of AT command ati:
Manufacturer: Sierra Wireless, Inc.
Model: MC8775
Revision: H1_1_8_3MCAP C:/WS/FW/H1_1_8_3MCAP/MSM6280/SRC 2007/03/08 18:17:59
IMEI: 352678013064321
IMEI SV: 6
FSN: D282407462010
3GPP Release 5
+GCAP: +CGSM,+DS,+ES

Attached is the kernel oops I got via serial connection to the laptop. The laptop runs in a docking station.

The same problem exist in Ubuntu/Karmic. The problem does _not_ occur with Red Hat 5.2 on the same hardware.

Any help is appreciated.
 Waldemar

Revision history for this message
Waldemar Brodkorb (ubuntu-waldemar-brodkorb) wrote :
Revision history for this message
Waldemar Brodkorb (ubuntu-waldemar-brodkorb) wrote :
Revision history for this message
Waldemar Brodkorb (ubuntu-waldemar-brodkorb) wrote :
Revision history for this message
Waldemar Brodkorb (ubuntu-waldemar-brodkorb) wrote :
Revision history for this message
Waldemar Brodkorb (ubuntu-waldemar-brodkorb) wrote :
Revision history for this message
Waldemar Brodkorb (ubuntu-waldemar-brodkorb) wrote :
Revision history for this message
Waldemar Brodkorb (ubuntu-waldemar-brodkorb) wrote :
Revision history for this message
Waldemar Brodkorb (ubuntu-waldemar-brodkorb) wrote :

Hi,

I compiled the sierra driver version v1.3.3 (before the commit mentioned below) for the Lucid Kernel (2.6.32-11-generic-pae) and the system does not crash with this driver loaded.

I think the bug was introduced by this changeset:
http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=b9a44bc19f48fd82b8f411500a9bb0ea4153d23c

Anything I can do to get this fixed for the release?

bye
 Waldemar

Revision history for this message
Waldemar Brodkorb (ubuntu-waldemar-brodkorb) wrote :

Hi,

I am in contact with the authors of the sierra driver. May be we find a solution soon.
I will report back, if I get a working patch.

bye
 Waldemar

Revision history for this message
Waldemar Brodkorb (ubuntu-waldemar-brodkorb) wrote :

Hi,

this patch fixes the crash. Identified by Elina Pasheva. Slightly modified by me to work with Ubuntu driver version.

It would be very nice, if you could integrate it.

Thanks in advance
 Waldemar

Revision history for this message
Waldemar Brodkorb (ubuntu-waldemar-brodkorb) wrote :

sorry, attached the wrong file.

Andy Whitcroft (apw)
tags: added: lucid
Changed in linux (Ubuntu):
status: New → Triaged
Changed in linux (Ubuntu):
importance: Undecided → Medium
Revision history for this message
Leann Ogasawara (leannogasawara) wrote :

Hi Waldemar,

Thanks for the reference to the patch. Looks like this is making it's way upstream:

http://permalink.gmane.org/gmane.linux.usb.general/27131

It's preferred for patches to go upstream first and then be pulled back into the Ubuntu kernel. We'll keep an eye on this. It seems this patch would/should also qualify for -stable. Feel free to post a comment here if you notice this lands upstream before we do. Thanks.

Revision history for this message
Andy Whitcroft (apw) wrote :

Seems to have made it upstream, and appears to be cc: stable so we may well get it shortly that way.

commit b87c6e86dac1bb5222279cc8ff7e09529e1c4ed9
Author: Elina Pasheva <email address hidden>
Date: Mon Feb 15 14:50:14 2010 -0800

    USB: serial: sierra driver indat_callback fix

    A crash has been reported with sierra driver on disconnect with
    Ubuntu/Lucid distribution based on kernel-2.6.32.
    The cause of the crash was determined as "NULL tty pointer was being
    referenced" and the NULL pointer was passed by sierra_indat_callback().

    This patch modifies sierra_indat_callback() function to check for NULL
    tty structure pointer. This modification prevents a crash from happening
    when the device is disconnected.

    This patch fixes the bug reported in Launchpad:
      https://bugs.launchpad.net/ubuntu/+source/linux/+bug/511157

    Signed-off-by: Elina Pasheva <email address hidden>
    Cc: stable <email address hidden>
    Signed-off-by: Greg Kroah-Hartman <email address hidden>

Revision history for this message
madbiologist (me-again) wrote :

This has made it into the 2.6.34-rc1 kernel. There is a PPA of this kernel available at http://kernel.ubuntu.com/~kernel-ppa/mainline/

Hopefully we will see this appear in a 2.6.32.x kernel.

tags: added: patch
Andy Whitcroft (apw)
tags: added: 2.6.32.10
Revision history for this message
Stefan Bader (smb) wrote :

The patch mentioned has made it into 2.6.32.10 and will get pulled from there.

Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (16.5 KiB)

This bug was fixed in the package linux - 2.6.32-17.26

---------------
linux (2.6.32-17.26) lucid; urgency=low

  [ Amit Kucheria ]

  * [Config] SECURITY_FILE_CAPABILITIES dissapeared in 2.6.33

  [ Andy Whitcroft ]

  * rules -- allow architecture configurations to be missing
  * SAUCE: cdrom -- default to not locking the tray when in use
    - LP: #397734
  * expose the kernel EXTRAVERSION in dmesg and /proc/version_signature
  * record the drm version in EXTRAVERSION
  * linux-tools -- pull out the perf binary into a binary package
  * [Config] enable MMIOTRACE for graphics debugging
  * [Config] enable BLK_DEV_BSG
  * debian -- fix builds when tools are disabled
  * allow us to build default configs for automated builds
  * config -- allow locally specified configuration overrides
  * [Config] de-modularise PATA disk controllers
  * [Config] de-modularise SATA disk controllers

  [ Stefan Bader ]

  * Revert "SAUCE: (pre-stable) netfilter: xt_recent: fix buffer overflow"
    - LP: #540231
  * Revert "SAUCE: (pre-stable) netfilter: xt_recent: fix false match"
    - LP: #540231
  * [Config] Update configs for 2.6.32.10
    - LP: #540231

  [ Tim Gardner ]

  * [Config] Add vmw_pvscsi and vmxnet3 to -virtual flavour
    - LP: #531017
  * SAUCE: igb: Supress an upstream compiler complaint
  * [Config] Fix sub-flavours package conflicts
    - LP: #454827

  [ Upstream Kernel Changes ]

  * Revert "tpm_tis: TPM_STS_DATA_EXPECT workaround"
    - LP: #540231
  * Revert "(pre-stable) sched: Fix SMT scheduler regression in
    find_busiest_queue()"
    - LP: #540231
  * (pre-stable) Bluetooth: Fix sleeping function in RFCOMM within invalid
    context
    - LP: #534549
  * igb: remove unused temp variable from stats clearing path
  * igb: update comments for serdes config and update to handle duplex
  * igb: update the approach taken to acquiring and releasing the phy lock
  * igb: add locking to reads of the i2c interface
  * igb: add combined function for setting rar and pool bits
  * igb: make use of the uta to allow for promiscous mode filter
  * igb: add support for 82576NS SerDes adapter
  * igb: add function to handle mailbox lock
  * igb: fix a few items where weren't correctly setup for mbx timeout
  * igb: change how we handle alternate mac addresses
  * igb: remove microwire support from igb
  * igb: move the generic copper link setup code into e1000_phy.c
  * igb: add code to retry a phy read in the event of failure on link check
  * igb: add additional error handling to the phy code
  * igb: add flushes between RAR writes when setting mac address
  * igb: Use the instance of net_device_stats from net_device.
  * igb: Fix erroneous display of stats by ethtool -S
  * igb: add new data structure for handling interrupts and NAPI
  * igb: remove rx checksum good counter
  * igb: increase minimum rx buffer size to 1K
  * igb: move the tx and rx ring specific config into seperate functions
  * igb: remove rx_ps_hdr_len
  * igb: move SRRCTL register configuration into ring specific config
  * igb: change the head and tail offsets into pointers
  * igb: add pci device pointer to ring structure
  * igb: move rx_buffer_len into the ring structu...

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

Other bug subscribers