Bug 648408 - Do not mix FMODE_ and O_ flags with break_lease() and may_open() [rhel-6.0.z]
Summary: Do not mix FMODE_ and O_ flags with break_lease() and may_open() [rhel-6.0.z]
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 6
Classification: Red Hat
Component: kernel
Version: 6.0
Hardware: All
OS: Linux
high
high
Target Milestone: rc
: ---
Assignee: Frantisek Hrbata
QA Contact: yanfu,wang
URL:
Whiteboard:
Depends On: 642677 1020741
Blocks:
TreeView+ depends on / blocked
 
Reported: 2010-11-01 08:36 UTC by RHEL Product and Program Management
Modified: 2013-10-18 08:41 UTC (History)
9 users (show)

Fixed In Version: kernel-2.6.32-71.9.1.el6
Doc Type: Bug Fix
Doc Text:
Due to a mix-up between FMODE_ and O_ flags, an NFSv4 client could get a WRITE lock on a file that another NFSv4 client already had a READ lock on. As a result, data could be corrupted. With this update, FMODE_ and O_ flags are properly handled and getting a WRITE lock fails in the aforementioned case.
Clone Of:
Environment:
Last Closed: 2011-01-11 19:47:45 UTC
Target Upstream Version:


Attachments (Terms of Use)


Links
System ID Priority Status Summary Last Updated
Red Hat Product Errata RHSA-2011:0007 normal SHIPPED_LIVE Important: kernel security and bug fix update 2011-01-11 19:44:55 UTC

Description RHEL Product and Program Management 2010-11-01 08:36:24 UTC
This bug has been copied from bug #642677 and has been proposed
to be backported to 6.0 z-stream (EUS).

Comment 3 Frantisek Hrbata 2010-11-22 07:53:51 UTC
in kernel-2.6.32-71.9.1.el6

Comment 5 yanfu,wang 2010-12-15 08:41:14 UTC
reproduced on rhel6-rc4 got the same error as per https://bugzilla.redhat.com/show_bug.cgi?id=642677#c0
verified on kernel-2.6.32-71.13.1.el6 on i386 and x86_64, result passed.
server:
# ./delegation /mnt
Step1: Get READ DELEGATION
       Get Success:(/mnt/file)
Step2: Get a READ lock
       Get READ lock success.
            <== Let the program pending here, goto STEP2
Step3: Release the READ lock
       Release READ lock success.
Step4: Close file

client:
# ./lock /mnttest/file 
Step1: Open file with O_RDWR
       Open Success:(/mnttest/file)
Step2: Get a WRITE lock
ERROR: Get WRITE lock fail
Step4: Close file

Comment 7 errata-xmlrpc 2011-01-11 19:47:45 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-0007.html

Comment 8 Martin Prpič 2011-01-12 12:54:19 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:
Due to a mix-up between FMODE_ and O_ flags, an NFSv4 client could get a WRITE lock on a file that another NFSv4 client already had a READ lock on. As a result, data could be corrupted. With this update, FMODE_ and O_ flags are properly handled and getting a WRITE lock fails in the aforementioned case.


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