Red Hat Bugzilla – Bug 442577
Backport fix for possible data corruption in mark_buffer_dirty on SMP
Last modified: 2009-01-20 15:17:08 EST
Description of problem:
Function mark_buffer_dirty() contains SMP-unsafe optimization. If CPU reorders
instructions in certain way, it may cause that modified data are not written and
filesystem corruption happens.
For discussion, see the thread at
There are several possible fixes with different performance and complexity (see
the thread), the one that went into upstream kernel is this:
Version-Release number of selected component (if applicable):
Can't be reproduced, was found during source code review.
If data corruption because of this bug ever happened, it would be very hard to
link the corruption to this problem --- so maybe it would be better to fix the
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
You can download this test kernel from http://people.redhat.com/dzickus/el5
~~ Snapshot 3 is now available ~~
Snapshot 3 is now available for Partner Testing, which should contain a fix that resolves this bug. ISO's available as usual at ftp://partners.redhat.com. Your testing feedback is vital! Please let us know if you encounter any NEW issues (file a new bug) or if you have VERIFIED the fix is present and functioning as expected (add PartnerVerified Keyword).
Ping your Partner Manager with any additional questions. Thanks!
~~ Attention ~~ Snapshot 4 is now available for testing @ partners.redhat.com ~~
Partners, it is vital that we get your testing feedback on this important bug fix / feature request. If you are unable to test, please clearly indicate this in a comment to this bug or directly with your partner manager. If we do not receive your test feedback, this bug is at risk from being dropped from the release.
If you have VERIFIED the fix, please add PartnerVerified to the Bugzilla Keywords field, along with a description of the test results.
If you encounter a new bug, CLONE this bug and request from your Partner manager to review. We are no longer excepting new bugs into the release, bar critical regressions.
NEC, IBM, others, what is the current status of this bug fix? The fix should be present in the latest RHEL5.3 Snapshot. Please test and send feedback ASAP.
It is fixed in the current 5.3 snapshot.
It is fixed with the patch linux-2.6-fs-potential-race-in-mark_buffer_dirty.patch . So any kernels that have this patch have the bug fixed.
The bug is hard to trigger (if it was ever triggered at all? --- it was found during source code review), so there is not much to test on it.
~~ Snapshot 6 is out ~~ Partners, please test and let us know if this bug has been fixed. Add PartnerVerified keyword if everything works as expected. For any new issues encountered, CLONE this bug and report the issues in the new bug.
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.