]> git.baikalelectronics.ru Git - kernel.git/commit
nfs: per-name sillyunlink exclusion
authorAl Viro <viro@zeniv.linux.org.uk>
Fri, 29 Apr 2016 03:56:31 +0000 (23:56 -0400)
committerAl Viro <viro@zeniv.linux.org.uk>
Mon, 9 May 2016 15:39:45 +0000 (11:39 -0400)
commitf55ed475f5f018bfa1766a17ff38c584f4a0fba5
treeba85a80a6422df631b18af344132c6fcb67f1594
parent3ace31be32a5bb4c5282feb068585bfa251e5dc2
nfs: per-name sillyunlink exclusion

use d_alloc_parallel() for sillyunlink/lookup exclusion and
explicit rwsem (nfs_rmdir() being a writer and nfs_call_unlink() -
a reader) for rmdir/sillyunlink one.

That ought to make lookup/readdir/!O_CREAT atomic_open really
parallel on NFS.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
fs/nfs/dir.c
fs/nfs/inode.c
fs/nfs/nfs4proc.c
fs/nfs/nfstrace.h
fs/nfs/unlink.c
include/linux/nfs_fs.h
include/linux/nfs_xdr.h