NFS: Optimise away an excessive GETATTR call when a file is symlinked
In the case when compiling via a symlink tree, we want to ensure that the close-to-open GETATTR call is applied only to the final file, and not to the symlink. Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
This commit is contained in:
Родитель
bce3481c91
Коммит
4e0641a7ad
|
@ -690,7 +690,9 @@ int nfs_lookup_verify_inode(struct inode *inode, struct nameidata *nd)
|
||||||
goto out_force;
|
goto out_force;
|
||||||
/* This is an open(2) */
|
/* This is an open(2) */
|
||||||
if (nfs_lookup_check_intent(nd, LOOKUP_OPEN) != 0 &&
|
if (nfs_lookup_check_intent(nd, LOOKUP_OPEN) != 0 &&
|
||||||
!(server->flags & NFS_MOUNT_NOCTO))
|
!(server->flags & NFS_MOUNT_NOCTO) &&
|
||||||
|
(S_ISREG(inode->i_mode) ||
|
||||||
|
S_ISDIR(inode->i_mode)))
|
||||||
goto out_force;
|
goto out_force;
|
||||||
}
|
}
|
||||||
return nfs_revalidate_inode(server, inode);
|
return nfs_revalidate_inode(server, inode);
|
||||||
|
|
Загрузка…
Ссылка в новой задаче