aboutsummaryrefslogtreecommitdiffstats
path: root/ipc/mqueue.c
diff options
context:
space:
mode:
authorSage Weil <sage@inktank.com>2012-08-15 13:30:12 -0700
committerMiklos Szeredi <mszeredi@suse.cz>2012-08-16 19:29:09 +0200
commit62b2ce964bb901f00a480104bd35a2e1f8d2cf58 (patch)
treef8014f9c014c84fdabcacfbde91b839ad32de385 /ipc/mqueue.c
parentfuse: check create mode in atomic open (diff)
downloadlinux-dev-62b2ce964bb901f00a480104bd35a2e1f8d2cf58.tar.xz
linux-dev-62b2ce964bb901f00a480104bd35a2e1f8d2cf58.zip
vfs: fix propagation of atomic_open create error on negative dentry
If ->atomic_open() returns -ENOENT, we take care to return the create error (e.g., EACCES), if any. Do the same when ->atomic_open() returns 1 and provides a negative dentry. This fixes a regression where an unprivileged open O_CREAT fails with ENOENT instead of EACCES, introduced with the new atomic_open code. It is tested by the open/08.t test in the pjd posix test suite, and was observed on top of fuse (backed by ceph-fuse). Signed-off-by: Sage Weil <sage@inktank.com> Signed-off-by: Miklos Szeredi <mszeredi@suse.cz>
Diffstat (limited to '')
0 files changed, 0 insertions, 0 deletions