Bug 199542

Summary: Data corruption after IO error on swap (RHEL3)
Product: Red Hat Enterprise Linux 3 Reporter: Bryn M. Reeves <bmr>
Component: kernelAssignee: Larry Woodman <lwoodman>
Status: CLOSED ERRATA QA Contact: Brian Brock <bbrock>
Severity: medium Docs Contact:
Priority: medium    
Version: 3.0CC: petrides, rkenna
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: RHSA-2007-0436 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2007-06-11 17:54:51 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:    
Bug Blocks: 203310, 212183    
Attachments:
Description Flags
Patch to correct swap IO error handling none

Description Bryn M. Reeves 2006-07-20 09:45:26 UTC
IT# 97960

This is the RHEL3 version of bug 198749

When an IO error occurs while writing a page to swap, the io completion
functiton marks the page with SetPageError() but fails to re-mark the page with
SetPageDirty().

Since the writeback was unsuccessful this is in error. The page may subsequently
be discarded from memory as it is now clean, resulting in incorrect data being
read when the page is later faulted back in.

In the read case, we need to check PageUptodate to ensure the IO completed
without error and return VM_FAULT_SIGBUS if it did not. In the write case, an
additional call to SetPageDirty() is placed immediately after the call to
SetPageError().

Customer has provided a patch based on upstream.

Comment 1 Bryn M. Reeves 2006-07-20 09:53:37 UTC
Created attachment 132737 [details]
Patch to correct swap IO error handling

Comment 2 Ernie Petrides 2006-07-20 20:25:22 UTC
RHEL3 is now closed.

Comment 3 Keiichi Mori 2006-08-23 03:31:50 UTC
This should be re-consideration since we are now going to plan RHEL3U9
and this problem causes data corruption.


Comment 7 Jay Turner 2007-02-20 12:47:57 UTC
QE ack for 3.9.

Comment 8 Ernie Petrides 2007-03-06 05:13:42 UTC
A fix for this problem has just been committed to the RHEL3 U9
patch pool this evening (in kernel version 2.4.21-47.6.EL).


Comment 11 Red Hat Bugzilla 2007-06-11 17:54:51 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 the 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-2007-0436.html


Comment 12 Issue Tracker 2007-06-12 02:12:13 UTC
Bugzilla comment added:

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 the 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-2007-0436.html


Internal Status set to 'Resolved'
Status set to: Closed by Tech
Summary edited.

This event sent from IssueTracker by mmatsuya 
 issue 97960