Lines Matching refs:nfsi
162 struct nfs_inode *nfsi = NFS_I(inode); in nfs_attribute_timeout() local
164 …return !time_in_range_open(jiffies, nfsi->read_cache_jiffies, nfsi->read_cache_jiffies + nfsi->att… in nfs_attribute_timeout()
184 static bool nfs_has_xattr_cache(const struct nfs_inode *nfsi) in nfs_has_xattr_cache() argument
186 return nfsi->xattr_cache != NULL; in nfs_has_xattr_cache()
189 static bool nfs_has_xattr_cache(const struct nfs_inode *nfsi) in nfs_has_xattr_cache() argument
197 struct nfs_inode *nfsi = NFS_I(inode); in nfs_set_cache_invalid() local
209 if (!nfs_has_xattr_cache(nfsi)) in nfs_set_cache_invalid()
215 nfsi->cache_validity |= flags; in nfs_set_cache_invalid()
218 nfsi->cache_validity &= ~(NFS_INO_INVALID_DATA | in nfs_set_cache_invalid()
220 else if (nfsi->cache_validity & NFS_INO_INVALID_DATA) in nfs_set_cache_invalid()
221 nfsi->cache_validity &= ~NFS_INO_DATA_INVAL_DEFER; in nfs_set_cache_invalid()
230 struct nfs_inode *nfsi = NFS_I(inode); in nfs_zap_caches_locked() local
235 nfsi->attrtimeo = NFS_MINATTRTIMEO(inode); in nfs_zap_caches_locked()
236 nfsi->attrtimeo_timestamp = jiffies; in nfs_zap_caches_locked()
251 nfs_zap_label_cache_locked(nfsi); in nfs_zap_caches_locked()
434 static void nfs_inode_init_regular(struct nfs_inode *nfsi) in nfs_inode_init_regular() argument
436 atomic_long_set(&nfsi->nrequests, 0); in nfs_inode_init_regular()
437 atomic_long_set(&nfsi->redirtied_pages, 0); in nfs_inode_init_regular()
438 INIT_LIST_HEAD(&nfsi->commit_info.list); in nfs_inode_init_regular()
439 atomic_long_set(&nfsi->commit_info.ncommit, 0); in nfs_inode_init_regular()
440 atomic_set(&nfsi->commit_info.rpcs_out, 0); in nfs_inode_init_regular()
441 mutex_init(&nfsi->commit_mutex); in nfs_inode_init_regular()
444 static void nfs_inode_init_dir(struct nfs_inode *nfsi) in nfs_inode_init_dir() argument
446 nfsi->cache_change_attribute = 0; in nfs_inode_init_dir()
447 memset(nfsi->cookieverf, 0, sizeof(nfsi->cookieverf)); in nfs_inode_init_dir()
448 init_rwsem(&nfsi->rmdir_sem); in nfs_inode_init_dir()
484 struct nfs_inode *nfsi = NFS_I(inode); in nfs_fhget() local
494 nfsi->cache_validity = 0; in nfs_fhget()
505 nfs_inode_init_regular(nfsi); in nfs_fhget()
510 nfs_inode_init_dir(nfsi); in nfs_fhget()
536 nfsi->write_io = 0; in nfs_fhget()
537 nfsi->read_io = 0; in nfs_fhget()
539 nfsi->read_cache_jiffies = fattr->time_start; in nfs_fhget()
540 nfsi->attr_gencount = fattr->gencount; in nfs_fhget()
591 nfsi->attrtimeo = NFS_MINATTRTIMEO(inode); in nfs_fhget()
592 nfsi->attrtimeo_timestamp = now; in nfs_fhget()
593 nfsi->access_cache = RB_ROOT; in nfs_fhget()
1006 struct nfs_inode *nfsi; in nfs_close_context() local
1016 nfsi = NFS_I(inode); in nfs_close_context()
1019 if (nfsi->cache_validity & NFS_INO_INVALID_DATA) in nfs_close_context()
1021 if (!list_empty(&nfsi->open_files)) in nfs_close_context()
1107 struct nfs_inode *nfsi = NFS_I(inode); in nfs_inode_attach_open_context() local
1110 if (list_empty(&nfsi->open_files) && in nfs_inode_attach_open_context()
1111 (nfsi->cache_validity & NFS_INO_DATA_INVAL_DEFER)) in nfs_inode_attach_open_context()
1114 list_add_tail_rcu(&ctx->list, &nfsi->open_files); in nfs_inode_attach_open_context()
1133 struct nfs_inode *nfsi = NFS_I(inode); in nfs_find_open_context() local
1137 list_for_each_entry_rcu(pos, &nfsi->open_files, list) { in nfs_find_open_context()
1197 struct nfs_inode *nfsi = NFS_I(inode); in __nfs_revalidate_inode() local
1258 if (nfsi->cache_validity & NFS_INO_INVALID_ACL) in __nfs_revalidate_inode()
1329 struct nfs_inode *nfsi = NFS_I(inode); in nfs_clear_invalid_mapping() local
1330 unsigned long *bitlock = &nfsi->flags; in nfs_clear_invalid_mapping()
1355 if (nfsi->cache_validity & NFS_INO_INVALID_DATA) in nfs_clear_invalid_mapping()
1363 nfsi->cache_validity &= in nfs_clear_invalid_mapping()
1385 struct nfs_inode *nfsi = NFS_I(inode); in nfs_revalidate_mapping_rcu() local
1386 unsigned long *bitlock = &nfsi->flags; in nfs_revalidate_mapping_rcu()
1397 (nfsi->cache_validity & NFS_INO_INVALID_DATA)) in nfs_revalidate_mapping_rcu()
1424 static bool nfs_file_has_writers(struct nfs_inode *nfsi) in nfs_file_has_writers() argument
1426 struct inode *inode = &nfsi->vfs_inode; in nfs_file_has_writers()
1430 if (list_empty(&nfsi->open_files)) in nfs_file_has_writers()
1435 static bool nfs_file_has_buffered_writers(struct nfs_inode *nfsi) in nfs_file_has_buffered_writers() argument
1437 return nfs_file_has_writers(nfsi) && nfs_file_io_is_buffered(nfsi); in nfs_file_has_buffered_writers()
1488 struct nfs_inode *nfsi = NFS_I(inode); in nfs_check_inode_attributes() local
1501 } else if (nfsi->fileid != fattr->fileid) { in nfs_check_inode_attributes()
1504 nfsi->fileid == fattr->mounted_on_fileid) in nfs_check_inode_attributes()
1512 if (!nfs_file_has_buffered_writers(nfsi)) { in nfs_check_inode_attributes()
1552 nfsi->read_cache_jiffies = fattr->time_start; in nfs_check_inode_attributes()
2003 struct nfs_inode *nfsi = NFS_I(inode); in nfs_update_inode() local
2009 bool have_writers = nfs_file_has_buffered_writers(nfsi); in nfs_update_inode()
2024 } else if (nfsi->fileid != fattr->fileid) { in nfs_update_inode()
2027 nfsi->fileid == fattr->mounted_on_fileid) in nfs_update_inode()
2032 inode->i_sb->s_id, (long long)nfsi->fileid, in nfs_update_inode()
2061 nfsi->read_cache_jiffies = fattr->time_start; in nfs_update_inode()
2063 save_cache_validity = nfsi->cache_validity; in nfs_update_inode()
2064 nfsi->cache_validity &= ~(NFS_INO_INVALID_ATTR in nfs_update_inode()
2073 nfsi->cache_validity |= in nfs_update_inode()
2105 nfsi->cache_validity |= NFS_INO_DATA_INVAL_DEFER; in nfs_update_inode()
2109 nfsi->cache_validity |= in nfs_update_inode()
2112 (nfsi->cache_validity & NFS_INO_INVALID_CHANGE) != 0) in nfs_update_inode()
2119 nfsi->cache_validity |= in nfs_update_inode()
2125 nfsi->cache_validity |= in nfs_update_inode()
2154 nfsi->cache_validity |= in nfs_update_inode()
2160 nfsi->cache_validity |= in nfs_update_inode()
2172 nfsi->cache_validity |= in nfs_update_inode()
2182 nfsi->cache_validity |= in nfs_update_inode()
2192 nfsi->cache_validity |= in nfs_update_inode()
2202 nfsi->cache_validity |= in nfs_update_inode()
2211 nfsi->cache_validity |= in nfs_update_inode()
2217 nfsi->cache_validity |= in nfs_update_inode()
2223 nfsi->attrtimeo = NFS_MINATTRTIMEO(inode); in nfs_update_inode()
2224 nfsi->attrtimeo_timestamp = now; in nfs_update_inode()
2226 nfsi->attr_gencount = nfs_inc_attr_generation_counter(); in nfs_update_inode()
2229 if (!time_in_range_open(now, nfsi->attrtimeo_timestamp, in nfs_update_inode()
2230 nfsi->attrtimeo_timestamp + nfsi->attrtimeo)) { in nfs_update_inode()
2231 nfsi->attrtimeo <<= 1; in nfs_update_inode()
2232 if (nfsi->attrtimeo > NFS_MAXATTRTIMEO(inode)) in nfs_update_inode()
2233 nfsi->attrtimeo = NFS_MAXATTRTIMEO(inode); in nfs_update_inode()
2235 nfsi->attrtimeo_timestamp = now; in nfs_update_inode()
2238 if ((long)(fattr->gencount - nfsi->attr_gencount) > 0) in nfs_update_inode()
2239 nfsi->attr_gencount = fattr->gencount; in nfs_update_inode()
2261 struct nfs_inode *nfsi; in nfs_alloc_inode() local
2262 nfsi = kmem_cache_alloc(nfs_inode_cachep, GFP_KERNEL); in nfs_alloc_inode()
2263 if (!nfsi) in nfs_alloc_inode()
2265 nfsi->flags = 0UL; in nfs_alloc_inode()
2266 nfsi->cache_validity = 0UL; in nfs_alloc_inode()
2268 nfsi->nfs4_acl = NULL; in nfs_alloc_inode()
2271 nfsi->xattr_cache = NULL; in nfs_alloc_inode()
2273 return &nfsi->vfs_inode; in nfs_alloc_inode()
2283 static inline void nfs4_init_once(struct nfs_inode *nfsi) in nfs4_init_once() argument
2286 INIT_LIST_HEAD(&nfsi->open_states); in nfs4_init_once()
2287 nfsi->delegation = NULL; in nfs4_init_once()
2288 init_rwsem(&nfsi->rwsem); in nfs4_init_once()
2289 nfsi->layout = NULL; in nfs4_init_once()
2295 struct nfs_inode *nfsi = (struct nfs_inode *) foo; in init_once() local
2297 inode_init_once(&nfsi->vfs_inode); in init_once()
2298 INIT_LIST_HEAD(&nfsi->open_files); in init_once()
2299 INIT_LIST_HEAD(&nfsi->access_cache_entry_lru); in init_once()
2300 INIT_LIST_HEAD(&nfsi->access_cache_inode_lru); in init_once()
2301 nfs4_init_once(nfsi); in init_once()