Bug 237323 - USB spinlock recursion bug in acm_read_bulk
Summary: USB spinlock recursion bug in acm_read_bulk
Keywords:
Status: CLOSED WONTFIX
Alias: None
Product: Red Hat Enterprise Linux 5
Classification: Red Hat
Component: kernel
Version: 5.0
Hardware: i686
OS: Linux
medium
medium
Target Milestone: ---
: ---
Assignee: Red Hat Kernel Manager
QA Contact: Red Hat Kernel QE team
URL:
Whiteboard:
Depends On: 222083
Blocks: 425461
TreeView+ depends on / blocked
 
Reported: 2007-04-20 19:53 UTC by Pete Zaitcev
Modified: 2018-12-05 15:08 UTC (History)
1 user (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2013-11-13 02:52:00 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)

Description Pete Zaitcev 2007-04-20 19:53:18 UTC
+++ This bug was initially created as a clone of Bug #222083 +++

Description of problem:
Random system lockups, seems uneffected by usage or load.

Version-Release number of selected component (if applicable):
kernel-2.6.18-1.2869.fc6

How reproducible:
Issue occurs randomly about 0 to four times a day.  It has been occuring on
multiple kernel versions (possibly even on FC5). Issue has appeared on 2
seperate Dell Latitude D600 laptops.  Has been appearing more frequently with
the use of a USB modem (cellphone teather) to access network.

Steps to Reproduce:
1. Use FC6 with USB modem to access network.
2. Can use system for web browsing or leave idle
3.
  
Actual results:
System lockup

Expected results:
no lockup

Additional info:

Previously no information was attained, was finally able to reproduce issue with
serial console capture.

BUG: spinlock recursion on CPU#0, firefox-bin/5756 (Not tainted)
 lock: e51c66c8, .magic: dead4ead, .owner: firefox-bin/5756, .owner_cpu: 0
 [<c04051db>] dump_trace+0x69/0x1af
 [<c0405339>] show_trace_log_lvl+0x18/0x2c
 [<c04058ed>] show_trace+0xf/0x11
 [<c04059ea>] dump_stack+0x15/0x17
 [<c04e978d>] _raw_spin_lock+0x35/0xdc
 [<f0c132f9>] acm_read_bulk+0x51/0xbf [cdc_acm]
 [<c058189f>] usb_hcd_giveback_urb+0x2d/0x5d
 [<f082865c>] uhci_giveback_urb+0x104/0x12b [uhci_hcd]
 [<f0828c79>] uhci_scan_schedule+0x4fc/0x77b [uhci_hcd]
 [<f082a6ed>] uhci_irq+0x129/0x13f [uhci_hcd]
 [<c05823f3>] usb_hcd_irq+0x23/0x50
 [<c044dcee>] handle_IRQ_event+0x23/0x49
 [<c044ddaa>] __do_IRQ+0x96/0xf2
 [<c04068bf>] do_IRQ+0x9e/0xbc
 =======================

-- Additional comment from rhentosh on 2007-01-09 22:45 EST --
Created an attachment (id=145220)
Full serial capture of failed system 


-- Additional comment from zaitcev on 2007-03-01 20:50 EST --
Robert, I'm convinced that the failure is fixed in updated kernels for FC-6.
I have verified the 2.6.20-1.2923.fc6, and the change is plainly there.
Please re-test with an updated kernel and close the bug if the problem
is gone.

The 2.6.20 has this versus the 2.6.18:

 next_buffer:
-       spin_lock(&acm->read_lock);
+       spin_lock_irqsave(&acm->read_lock, flags);
        if (list_empty(&acm->filled_read_bufs)) {
-               spin_unlock(&acm->read_lock);
+               spin_unlock_irqrestore(&acm->read_lock, flags);
                goto urbs;
        }


-- Additional comment from zaitcev on 2007-03-01 20:52 EST --
Oooh, wait. I see what the problem is. The RHEL 5 has this problem, because
it ships with 2.6.18. It's just the Bugzilla has product version set to fc6.


-- Additional comment from zaitcev on 2007-03-01 20:58 EST --
Created an attachment (id=149082)
Candidate patch #1 (RHEL 5)

This is a small backport from Fedora, which should be sufficient.


-- Additional comment from zaitcev on 2007-03-08 20:51 EST --
I have verified that the fix is in 2.6.19-1.2911.6.4.fc6.
Robert, please verify that it works and close the bug.


-- Additional comment from rhentosh on 2007-04-20 09:33 EST --
I have also verified that the patch works on FC5 2.6.18-1.2239 and RHEL5
2.6.18-15.el5. Both patch cleanly. Both were tested heavily for a day. Would
have expected around 8-10 failures in that time.

Patch works.

Comment 2 RHEL Program Management 2008-02-01 22:41:52 UTC
This request was evaluated by Red Hat Product Management for
inclusion, but this component is not scheduled to be updated in
the current Red Hat Enterprise Linux release. If you would like
this request to be reviewed for the next minor release, ask your
support representative to set the next rhel-x.y flag to "?".

Comment 4 John Feeney 2013-11-13 02:52:00 UTC
This Bugzilla has been reviewed by Red Hat and is not planned on being
addressed in Red Hat Enterprise Linux 5, and therefore is being closed.
If this bug is critical to production systems, please contact your Red
Hat support representative and provide a sufficient business justification
in order to re-open it.


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