Bug 159001

Summary: Executing file on NFS client gets corrupted if updated on server
Product: Red Hat Enterprise Linux 3 Reporter: Göran Uddeborg <goeran>
Component: kernelAssignee: Steve Dickson <steved>
Status: CLOSED WONTFIX QA Contact: Brian Brock <bbrock>
Severity: medium Docs Contact:
Priority: medium    
Version: 3.0CC: djuran, olle, petrides, seanos, staubach
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2007-10-19 19:01:23 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:

Description Göran Uddeborg 2005-05-27 15:35:40 UTC
Description of problem:
If an NFS client is executing a file which is loaded over NFS, and this file is
modified on some other client or on the server, the file becomes corrupt on the
client executing.  Its attributes are correct, but the contents is wrong.  It is
neither the old nor the new contents.  The error remains even after the process
on the client has died.

Version-Release number of selected component (if applicable):
kernel-2.4.21-32.EL
(The file server is running RHEL 4, kernel-2.6.9-5.0.5.EL and nfs-utils-1.0.6-46)

How reproducible:
Every time

Steps to Reproduce:
1.On the file server:
livingston> sudo cp /bin/sleep mysleep
livingston> sudo cp /bin/sleep mysleep2
livingston> sha1sum mysleep*
e208767d5b7e2ea6722eceaa1eb52d010dd7edf8  mysleep
e208767d5b7e2ea6722eceaa1eb52d010dd7edf8  mysleep2
2.On the client:
schellville> sha1sum mysleep*
e208767d5b7e2ea6722eceaa1eb52d010dd7edf8  mysleep
e208767d5b7e2ea6722eceaa1eb52d010dd7edf8  mysleep2
# So far so good
3.Run one of the files on the client:
schellville> ./mysleep 1000&
[1] 4481
4.Overwrite the files on the server:
livingston> sudo cp /bin/true mysleep
livingston> sudo cp /bin/true mysleep2
livingston> sha1sum mysleep*
932416b277df96a7a9b96f9cb44f1d6d3ed57bb8  mysleep
932416b277df96a7a9b96f9cb44f1d6d3ed57bb8  mysleep2
5.Now, the files look different on the client:
schellville> sha1sum mysleep*
5a5ded209c0e327b87680e49552b633a213ca86b  mysleep
932416b277df96a7a9b96f9cb44f1d6d3ed57bb8  mysleep2

Actual results:
mysleep and mysleep2 differ; mysleep is corrupt.

Expected results:
They should both be updated.

Additional info:
Note that it's neither the new nor the old value in "mysleep" on the client.
Terminating the mysleep process on the client doesn't change anything.  Even
long after the process died, the contents of mysleep is still wrong.

We have seen this with both x86_64 and i386 clients.  The server in both cases
is a x86_64 machine.

Comment 2 RHEL Program Management 2007-10-19 19:01:23 UTC
This bug is filed against RHEL 3, which is in maintenance phase.
During the maintenance phase, only security errata and select mission
critical bug fixes will be released for enterprise products. Since
this bug does not meet that criteria, it is now being closed.
 
For more information of the RHEL errata support policy, please visit:
http://www.redhat.com/security/updates/errata/
 
If you feel this bug is indeed mission critical, please contact your
support representative. You may be asked to provide detailed
information on how this bug is affecting you.