| Summary: | The futex proxy handler grabs the pi_lock without disabling interrupts | ||||||
|---|---|---|---|---|---|---|---|
| Product: | Red Hat Enterprise MRG | Reporter: | Steven Rostedt <srostedt> | ||||
| Component: | realtime-kernel | Assignee: | John Kacur <jkacur> | ||||
| Status: | CLOSED ERRATA | QA Contact: | David Sommerseth <davids> | ||||
| Severity: | unspecified | Docs Contact: | |||||
| Priority: | unspecified | ||||||
| Version: | 2.2 | CC: | bhu, jkacur, jkastner, lgoncalv, ovasik | ||||
| Target Milestone: | 2.2 | ||||||
| Target Release: | --- | ||||||
| Hardware: | Unspecified | ||||||
| OS: | Unspecified | ||||||
| Whiteboard: | |||||||
| Fixed In Version: | Doc Type: | Bug Fix | |||||
| Doc Text: |
Cause: Interrupts can take the same pi_lock as the task
Consequence: Deadlock from an interrupt taking the pi_lock
Fix: Disable interrupts when taking pi_lock
Result: Deadlock is prevented.
|
Story Points: | --- | ||||
| Clone Of: | Environment: | ||||||
| Last Closed: | 2012-09-19 18:03:29 UTC | Type: | --- | ||||
| Regression: | --- | Mount Type: | --- | ||||
| Documentation: | --- | CRM: | |||||
| Verified Versions: | Category: | --- | |||||
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||
| Cloudforms Team: | --- | Target Upstream Version: | |||||
| Attachments: |
|
||||||
|
Description
Steven Rostedt
2012-03-02 16:02:19 UTC
Created attachment 567095 [details]
Disable interrupts when taking pi_lock()
Use raw_spin_lock_irq() instead of raw_spin_lock() when taking pi_lock in the futex proxy handler.
The fix here is equivalent to 9358ad7 git describe --contains 9358ad7 v3.2.14-rt24~10 Modifying kernel-rt.spec to document this.
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:
Cause: Interrupts can take the same pi_lock as the task
Consequence: Deadlock from an interrupt taking the pi_lock
Fix: Disable interrupts when taking pi_lock
Result: Deadlock is prevented.
The patch was added to 3.2.14-rt24 (upstream stable-rt). Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. http://rhn.redhat.com/errata/RHSA-2012-1282.html |