Bug 139444
Summary: | mode of device nodes and sockets on NFS filesystems | ||
---|---|---|---|
Product: | Red Hat Enterprise Linux 3 | Reporter: | David Lehman <dlehman> |
Component: | kernel | Assignee: | Steve Dickson <steved> |
Status: | CLOSED WONTFIX | QA Contact: | Brian Brock <bbrock> |
Severity: | medium | Docs Contact: | |
Priority: | medium | ||
Version: | 3.0 | CC: | petrides, riel, tao |
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: | 2005-06-22 13:18:52 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
David Lehman
2004-11-15 23:36:21 UTC
Dave, could you verify whether the mode of the device is set properly at any time on the server? Which OS and revision is running on the server? Do you know whether the mount is mounted with noac, or sync? Would you be able to gather a tcpdump of the file creation, chmod, and subsequent ls? Well it appears there is not much we can do about this because of how socket are created. When a socket is created, an inode is also allocated. In the inode there is an 'inode_operations' field that is set, usually by the file system, to point to the appropriate file system specific operations. In the case of NFS, these operations causes Over-The-Wire operations then things like chmod are done. Now the problem is the inode_operations field in the inode (that is attached to the socket) are not being set with the NFS specific operations, so when the chmod is done the NFS opts are never called which means the permission bits are only set locally (i.e. the server is never told of the change). When the local cache expires, NFS will refresh its cache with the server bits which in this case are the old permission bits. Thats why the permission bits revert after a few seconds. |