Bug 445054 - 8250 serial port lock recursion
8250 serial port lock recursion
Status: CLOSED ERRATA
Product: Red Hat Enterprise Linux 4
Classification: Red Hat
Component: kernel (Show other bugs)
4.5
All Linux
medium Severity medium
: rc
: ---
Assigned To: Prarit Bhargava
Martin Jenner
:
Depends On:
Blocks: 461304
  Show dependency treegraph
 
Reported: 2008-05-02 21:16 EDT by Herbert van den Bergh
Modified: 2009-05-18 15:33 EDT (History)
4 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2009-05-18 15:33:32 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)
panic stack trace (4.22 KB, text/plain)
2008-05-02 21:16 EDT, Herbert van den Bergh
no flags Details
fix for recursive lock request in 8250.c (471 bytes, patch)
2008-05-02 21:18 EDT, Herbert van den Bergh
no flags Details | Diff
RHEL4 fix for this issue (928 bytes, patch)
2008-05-06 13:57 EDT, Prarit Bhargava
no flags Details | Diff

  None (edit)
Description Herbert van den Bergh 2008-05-02 21:16:45 EDT
Description of problem:

Customer is running EL4.5 as a HVM guest under Xen, using a terminal window and
xm console to connect to the virtual serial console of the vm.  When the user
pastes a large amount of text (>512 bytes) into the console window, the guest
kernel panics (UP) or deadlocks (SMP).

The bug is due to a recursive lock request caused by not releasing the port lock
in drivers/serial/8250.c:receive_chars()

This is the same problem as reported upstream, with a fix posted here:
http://lkml.org/lkml/2005/2/4/77
The second part of this fix was introduced in el4.5 but the first part was
missed.  However, the first part is needed as well.

Version-Release number of selected component (if applicable):
kernel-2.6.9-55

How reproducible:
Every time.

Steps to Reproduce:
1. start a xen hvm guest running the el 4.5 kernel
2. connect to the guest console with the command "xm console <domain>"
3. copy and paste more than 512 bytes into the console window
  
Actual results:
guest kernel panic or deadlock

Expected results:
no guest kernel panic or deadlock

Additional info:
Comment 1 Herbert van den Bergh 2008-05-02 21:16:45 EDT
Created attachment 304435 [details]
panic stack trace
Comment 2 Herbert van den Bergh 2008-05-02 21:18:53 EDT
Created attachment 304436 [details]
fix for recursive lock request in 8250.c
Comment 3 Prarit Bhargava 2008-05-06 09:55:44 EDT
Can't seem to get to the link above.

http://marc.info/?l=linux-kernel&m=110780844815293&w=2

The second part of the patch was submitted by Aris .. cc'ing him on this BZ.

The first part of the patch makes sense and IMO is stable enough to be included.
 I'll create a patch and test.

P.
Comment 4 Prarit Bhargava 2008-05-06 10:09:07 EDT
Sorry -- wrong link:  

http://marc.info/?l=linux-kernel&m=110751569018181&w=2

P.
Comment 5 Prarit Bhargava 2008-05-06 13:57:39 EDT
Created attachment 304667 [details]
RHEL4 fix for this issue
Comment 6 RHEL Product and Program Management 2008-06-26 08:46:28 EDT
This request was evaluated by Red Hat Product Management for inclusion in a Red
Hat Enterprise Linux maintenance release.  Product Management has requested
further review of this request by Red Hat Engineering, for potential
inclusion in a Red Hat Enterprise Linux Update release for currently deployed
products.  This request is not yet committed for inclusion in an Update
release.
Comment 7 RHEL Product and Program Management 2008-09-03 09:09:12 EDT
Updating PM score.
Comment 8 Vivek Goyal 2008-09-12 15:58:12 EDT
Committed in 78.9.EL . RPMS are available at http://people.redhat.com/vgoyal/rhel4/
Comment 11 errata-xmlrpc 2009-05-18 15:33:32 EDT
An advisory has been issued which should help the problem
described in this bug report. This report is therefore being
closed with a resolution of ERRATA. For more information
on therefore solution and/or where to find the updated files,
please follow the link below. You may reopen this bug report
if the solution does not work for you.

http://rhn.redhat.com/errata/RHSA-2009-1024.html

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