Bug 689699

Summary: Deadlock between device driver attachment and device removal with a USB device [rhel-5.6.z]
Product: Red Hat Enterprise Linux 5 Reporter: RHEL Program Management <pm-rhel>
Component: kernelAssignee: Phillip Lougher <plougher>
Status: CLOSED ERRATA QA Contact: Red Hat Kernel QE team <kernel-qe>
Severity: urgent Docs Contact:
Priority: urgent    
Version: 5.5CC: apevec, bruno.cornec, dhoward, djeffery, dyasny, dzickus, jpirko, jwilson, pm-eus, qcai, yugzhang
Target Milestone: rcKeywords: ZStream
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: kernel-2.6.18-238.10.1.el5 Doc Type: Bug Fix
Doc Text:
Under certain circumstances, a deadlock could occur between the khubd process of the USB stack and the modprobe of the usb-storage module. This was because the khubd process, when attempting to delete a usb device, waited for the reference count of knode_bus to be of value 0. However, modprobe, when loading the usb-storage module, scans all USB devices and increments the reference count, preventing the khubd process to continue. With this update, the underlying source code has been modified to address this issue, and a deadlock no longer occurs in the aforementioned case.
Story Points: ---
Clone Of: Environment:
Last Closed: 2011-05-31 14:07:14 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 637930    
Bug Blocks: 568128    

Description RHEL Program Management 2011-03-22 08:02:53 UTC
This bug has been copied from bug #637930 and has been proposed
to be backported to 5.6 z-stream (EUS).

Comment 3 Phillip Lougher 2011-04-15 15:04:57 UTC
in kernel-2.6.18-238.10.1.el5

linux-2.6-misc-pm-add-comment-explaining-is_registered-kabi-work-around.patch
linux-2.6-base-fix-potential-deadlock-in-driver-core.patch

Comment 6 errata-xmlrpc 2011-05-31 14:07:14 UTC
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-2011-0833.html

Comment 7 Martin Prpič 2011-06-02 13:24:01 UTC
    Technical note added. If any revisions are required, please edit the "Technical Notes" field
    accordingly. All revisions will be proofread by the Engineering Content Services team.
    
    New Contents:
Under certain circumstances, a deadlock could occur between the khubd process of the USB stack and the modprobe of the usb-storage module. This was because the khubd process, when attempting to delete a usb device, waited for the reference count of knode_bus to be of value 0. However, modprobe, when loading the usb-storage module, scans all USB devices and increments the reference count, preventing the khubd process to continue. With this update, the underlying source code has been modified to address this issue, and a deadlock no longer occurs in the aforementioned case.