Lines Matching refs:nfsd_file

7  * An nfsd_file object is a per-file collection of open state that binds
15 * nfsd_file objects are reference-counted. Consumers acquire a new
18 * nfsd_file_get and nfsd_file_put. There are two varieties of nfsd_file
23 * collected nfsd_file. The final nfsd_file_put releases the open
27 * of open state, it acquires a garbage-collected nfsd_file. The
98 .key_len = sizeof_field(struct nfsd_file, nf_inode),
99 .key_offset = offsetof(struct nfsd_file, nf_inode),
100 .head_offset = offsetof(struct nfsd_file, nf_rlist),
121 struct nfsd_file *nf = container_of(rcu, struct nfsd_file, nf_rcu);
154 nfsd_file_mark_find_or_create(struct nfsd_file *nf, struct inode *inode)
208 static struct nfsd_file *
212 struct nfsd_file *nf;
235 * @nf: nfsd_file to check for writeback errors
237 * Check whether a nfsd_file has an unseen error. Reset the write
241 nfsd_file_check_write_error(struct nfsd_file *nf)
251 nfsd_file_hash_remove(struct nfsd_file *nf)
259 nfsd_file_unhash(struct nfsd_file *nf)
269 nfsd_file_free(struct nfsd_file *nf)
297 nfsd_file_check_writeback(struct nfsd_file *nf)
319 static bool nfsd_file_lru_add(struct nfsd_file *nf)
329 static bool nfsd_file_lru_remove(struct nfsd_file *nf)
338 struct nfsd_file *
339 nfsd_file_get(struct nfsd_file *nf)
347 * nfsd_file_put - put the reference to a nfsd_file
348 * @nf: nfsd_file of which to put the reference
350 * Put a reference to a nfsd_file. In the non-GC case, we just put the
355 nfsd_file_put(struct nfsd_file *nf)
393 struct nfsd_file *nf;
396 nf = list_first_entry(dispose, struct nfsd_file, nf_lru);
413 struct nfsd_file *nf = list_first_entry(dispose,
414 struct nfsd_file, nf_lru);
474 struct nfsd_file *nf = list_entry(item, struct nfsd_file, nf_lru);
554 * nfsd_file_cond_queue - conditionally unhash and queue a nfsd_file
555 * @nf: nfsd_file to attempt to queue
558 * Unhash an nfsd_file, try to get a reference to it, and then put that
562 nfsd_file_cond_queue(struct nfsd_file *nf, struct list_head *dispose)
591 * An nfsd_file represents a struct file being held open on behalf of nfsd.
599 * refcounts go to zero. The actual free of an nfsd_file can be expensive,
606 struct nfsd_file *nf;
620 * nfsd_file_close_inode - attempt a delayed close of a nfsd_file
638 * nfsd_file_close_inode_sync - attempt to forcibly close a nfsd_file
650 struct nfsd_file *nf;
657 nf = list_first_entry(&dispose, struct nfsd_file, nf_lru);
725 nfsd_file_slab = KMEM_CACHE(nfsd_file, 0);
794 * Walk the nfsd_file cache and close out any that match @net. If @net is NULL,
802 struct nfsd_file *nf;
918 static struct nfsd_file *
924 struct nfsd_file *nf;
962 struct nfsd_file *nf;
982 struct nfsd_file **pnf, bool want_gc)
986 struct nfsd_file *new, *nf;
1121 * nfsd_file_acquire_gc - Get a struct nfsd_file with an open file
1125 * @pnf: OUT: new or found "struct nfsd_file" object
1127 * The nfsd_file object returned by this API is reference-counted
1133 * %nfs_ok - @pnf points to an nfsd_file with its reference
1140 unsigned int may_flags, struct nfsd_file **pnf)
1146 * nfsd_file_acquire - Get a struct nfsd_file with an open file
1150 * @pnf: OUT: new or found "struct nfsd_file" object
1157 * %nfs_ok - @pnf points to an nfsd_file with its reference
1164 unsigned int may_flags, struct nfsd_file **pnf)
1170 * nfsd_file_acquire_opened - Get a struct nfsd_file using existing open file
1175 * @pnf: OUT: new or found "struct nfsd_file" object
1177 * Acquire a nfsd_file object that is not GC'ed. If one doesn't already exist,
1178 * and @file is non-NULL, use it to instantiate a new nfsd_file instead of
1182 * %nfs_ok - @pnf points to an nfsd_file with its reference
1190 struct nfsd_file **pnf)