Bug 1386072
| Summary: | Spurious permission denied problems observed | ||
|---|---|---|---|
| Product: | [Community] GlusterFS | Reporter: | Pranith Kumar K <pkarampu> |
| Component: | posix | Assignee: | bugs <bugs> |
| Status: | CLOSED CURRENTRELEASE | QA Contact: | |
| Severity: | unspecified | Docs Contact: | |
| Priority: | unspecified | ||
| Version: | 3.9 | CC: | bugs |
| Target Milestone: | --- | ||
| Target Release: | --- | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
| Whiteboard: | |||
| Fixed In Version: | glusterfs-3.9.0 | Doc Type: | If docs needed, set a value |
| Doc Text: | Story Points: | --- | |
| Clone Of: | 1386071 | Environment: | |
| Last Closed: | 2016-12-06 06:00:01 UTC | Type: | Bug |
| 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: | 1386071 | ||
| Bug Blocks: | |||
|
Description
Pranith Kumar K
2016-10-18 03:26:17 UTC
REVIEW: http://review.gluster.org/15664 (storage/posix: Fix race in posix_pstat) posted (#1) for review on release-3.9 by Pranith Kumar Karampuri (pkarampu) COMMIT: http://review.gluster.org/15664 committed in release-3.9 by Pranith Kumar Karampuri (pkarampu) ------ commit 10f2cbdfe6b375dbe602ba2c1da09008057f52c8 Author: Pranith Kumar K <pkarampu> Date: Fri Sep 23 21:06:37 2016 +0530 storage/posix: Fix race in posix_pstat Problem: When one thread is in the process of creating a file/directory and the other thread is doing readdirp, there is a chance that posix_pstat, creation fops race in the following manner which will lead to wrong stat values to be read by parent xlators like posix-acl. Creation fops posix_pstat() as part of readdirp 1) file is created with uid/gid 0/0 1) does stat of the path that is created just now. 2) Does chown to set the correct uid/gid 3) Sets the acl/user/internal xattrs 4) Sets the gfid on the entry and completes the creation of the file/dir 2) fills the gfid in the iatt If unwind of readdirp hits server xlator before creation fop, then posix-acl remembers uid/gid of the file to be root/root and fails fops like open etc on it. Fix: Reverse the order of filling gfid and filling lstat() values in posix_pstat() so that if there is gfid in iatt buffer uid/gid are valid. >Change-Id: I46caa7f6da7abfa40a0b1d70e35b88de9c64959c >Signed-off-by: Pranith Kumar K <pkarampu> >Reviewed-on: http://review.gluster.org/15564 >NetBSD-regression: NetBSD Build System <jenkins.org> >CentOS-regression: Gluster Build System <jenkins.org> >Smoke: Gluster Build System <jenkins.org> >Reviewed-by: Shyamsundar Ranganathan <srangana> BUG: 1386072 Change-Id: Ida2bd7297de8e7f51bcb7deda8936ce64ea8ec2b Signed-off-by: Pranith Kumar K <pkarampu> Reviewed-on: http://review.gluster.org/15664 NetBSD-regression: NetBSD Build System <jenkins.org> CentOS-regression: Gluster Build System <jenkins.org> Smoke: Gluster Build System <jenkins.org> glusterfs-3.9.0rc2 is released[1] and packages are available for different distributions[2] to test. [1] http://www.gluster.org/pipermail/maintainers/2016-October/001601.html [2] http://www.gluster.org/pipermail/maintainers/2016-October/001605.html and http://www.gluster.org/pipermail/maintainers/2016-October/001606.html Gluster 3.9 GA is released http://blog.gluster.org/2016/11/announcing-gluster-3-9/ |