Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 3825827e authored by Trond Myklebust's avatar Trond Myklebust
Browse files

NFS: More excessive attribute revalidation in nfs_execute_ok()



execute_ok() will only check the mode bits if the object is not a
directory, so we don't need to revalidate the attributes in that case.

Signed-off-by: default avatarTrond Myklebust <trond.myklebust@hammerspace.com>
parent cf834027
Loading
Loading
Loading
Loading
+2 −0
Original line number Original line Diff line number Diff line
@@ -2500,6 +2500,8 @@ static int nfs_execute_ok(struct inode *inode, int mask)
	struct nfs_server *server = NFS_SERVER(inode);
	struct nfs_server *server = NFS_SERVER(inode);
	int ret = 0;
	int ret = 0;


	if (S_ISDIR(inode->i_mode))
		return 0;
	if (nfs_check_cache_invalid(inode, NFS_INO_INVALID_OTHER)) {
	if (nfs_check_cache_invalid(inode, NFS_INO_INVALID_OTHER)) {
		if (mask & MAY_NOT_BLOCK)
		if (mask & MAY_NOT_BLOCK)
			return -ECHILD;
			return -ECHILD;