|
@@ -1131,14 +1131,12 @@ out:
|
|
}
|
|
}
|
|
|
|
|
|
/**
|
|
/**
|
|
- * __nfs_revalidate_mapping - Revalidate the pagecache
|
|
|
|
|
|
+ * nfs_revalidate_mapping - Revalidate the pagecache
|
|
* @inode - pointer to host inode
|
|
* @inode - pointer to host inode
|
|
* @mapping - pointer to mapping
|
|
* @mapping - pointer to mapping
|
|
- * @may_lock - take inode->i_mutex?
|
|
|
|
*/
|
|
*/
|
|
-static int __nfs_revalidate_mapping(struct inode *inode,
|
|
|
|
- struct address_space *mapping,
|
|
|
|
- bool may_lock)
|
|
|
|
|
|
+int nfs_revalidate_mapping(struct inode *inode,
|
|
|
|
+ struct address_space *mapping)
|
|
{
|
|
{
|
|
struct nfs_inode *nfsi = NFS_I(inode);
|
|
struct nfs_inode *nfsi = NFS_I(inode);
|
|
unsigned long *bitlock = &nfsi->flags;
|
|
unsigned long *bitlock = &nfsi->flags;
|
|
@@ -1187,12 +1185,7 @@ static int __nfs_revalidate_mapping(struct inode *inode,
|
|
nfsi->cache_validity &= ~NFS_INO_INVALID_DATA;
|
|
nfsi->cache_validity &= ~NFS_INO_INVALID_DATA;
|
|
spin_unlock(&inode->i_lock);
|
|
spin_unlock(&inode->i_lock);
|
|
trace_nfs_invalidate_mapping_enter(inode);
|
|
trace_nfs_invalidate_mapping_enter(inode);
|
|
- if (may_lock) {
|
|
|
|
- inode_lock(inode);
|
|
|
|
- ret = nfs_invalidate_mapping(inode, mapping);
|
|
|
|
- inode_unlock(inode);
|
|
|
|
- } else
|
|
|
|
- ret = nfs_invalidate_mapping(inode, mapping);
|
|
|
|
|
|
+ ret = nfs_invalidate_mapping(inode, mapping);
|
|
trace_nfs_invalidate_mapping_exit(inode, ret);
|
|
trace_nfs_invalidate_mapping_exit(inode, ret);
|
|
|
|
|
|
clear_bit_unlock(NFS_INO_INVALIDATING, bitlock);
|
|
clear_bit_unlock(NFS_INO_INVALIDATING, bitlock);
|
|
@@ -1202,29 +1195,6 @@ out:
|
|
return ret;
|
|
return ret;
|
|
}
|
|
}
|
|
|
|
|
|
-/**
|
|
|
|
- * nfs_revalidate_mapping - Revalidate the pagecache
|
|
|
|
- * @inode - pointer to host inode
|
|
|
|
- * @mapping - pointer to mapping
|
|
|
|
- */
|
|
|
|
-int nfs_revalidate_mapping(struct inode *inode, struct address_space *mapping)
|
|
|
|
-{
|
|
|
|
- return __nfs_revalidate_mapping(inode, mapping, false);
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-/**
|
|
|
|
- * nfs_revalidate_mapping_protected - Revalidate the pagecache
|
|
|
|
- * @inode - pointer to host inode
|
|
|
|
- * @mapping - pointer to mapping
|
|
|
|
- *
|
|
|
|
- * Differs from nfs_revalidate_mapping() in that it grabs the inode->i_mutex
|
|
|
|
- * while invalidating the mapping.
|
|
|
|
- */
|
|
|
|
-int nfs_revalidate_mapping_protected(struct inode *inode, struct address_space *mapping)
|
|
|
|
-{
|
|
|
|
- return __nfs_revalidate_mapping(inode, mapping, true);
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
static bool nfs_file_has_writers(struct nfs_inode *nfsi)
|
|
static bool nfs_file_has_writers(struct nfs_inode *nfsi)
|
|
{
|
|
{
|
|
struct inode *inode = &nfsi->vfs_inode;
|
|
struct inode *inode = &nfsi->vfs_inode;
|