Bug 456687 - race in aio_complete() leads to process hang
race in aio_complete() leads to process hang
Status: CLOSED DUPLICATE of bug 475814
Product: Red Hat Enterprise Linux 5
Classification: Red Hat
Component: kernel (Show other bugs)
5.2
All Linux
medium Severity medium
: rc
: ---
Assigned To: Red Hat Kernel Manager
Red Hat Kernel QE team
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2008-07-25 11:34 EDT by Bryn M. Reeves
Modified: 2010-09-24 10:51 EDT (History)
2 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2009-02-13 10:56:25 EST
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Bryn M. Reeves 2008-07-25 11:34:23 EDT
+++ This bug was initially created as a clone of Bug #456686 +++

Description of problem:
There is a missing memory barrier in the current aio_complete in the RHEL5
kernels causing a race between read_events/aio_complete causing the thread in
read_events to sleep indefinitely, hanging the application that is waiting on
I/O completion.

This was reported upstream by Quentin Barnes of Yahoo:

http://lkml.org/lkml/2008/3/12/207

Fix has been merged in 2.6.26:

http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6cb2a21049b8990df4576c5fce4d48d0206c22d5

And was also accepted for 2.6.24.y:

http://git.kernel.org/?p=linux/kernel/git/stable/linux-2.6.24.y.git;a=commit;h=0db49fc729eee503836ea12745b55f7f802d2abb

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


How reproducible:
Unclear. Depends on the AIO application; Quentin reports seeing hangs virtually
100% of the time. Looking for a straightforward reproducer for this now and will
update with details when they are available.

Steps to Reproduce:
< to be filled >
  
Actual results:
Application hangs in read_events

Expected results:
No hang. AIO completes as normal.

Additional info:

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