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
101 .key_len = sizeof_field(struct nfsd_file, nf_inode),
102 .key_offset = offsetof(struct nfsd_file, nf_inode),
103 .head_offset = offsetof(struct nfsd_file, nf_rlist),
124 struct nfsd_file *nf = container_of(rcu, struct nfsd_file, nf_rcu);
157 nfsd_file_mark_find_or_create(struct nfsd_file *nf, struct inode *inode)
211 static struct nfsd_file *
215 struct nfsd_file *nf;
238 * @nf: nfsd_file to check for writeback errors
240 * Check whether a nfsd_file has an unseen error. Reset the write
244 nfsd_file_check_write_error(struct nfsd_file *nf)
254 nfsd_file_hash_remove(struct nfsd_file *nf)
262 nfsd_file_unhash(struct nfsd_file *nf)
272 nfsd_file_free(struct nfsd_file *nf)
300 nfsd_file_check_writeback(struct nfsd_file *nf)
322 static bool nfsd_file_lru_add(struct nfsd_file *nf)
332 static bool nfsd_file_lru_remove(struct nfsd_file *nf)
341 struct nfsd_file *
342 nfsd_file_get(struct nfsd_file *nf)
350 * nfsd_file_put - put the reference to a nfsd_file
351 * @nf: nfsd_file of which to put the reference
353 * Put a reference to a nfsd_file. In the non-GC case, we just put the
358 nfsd_file_put(struct nfsd_file *nf)
396 struct nfsd_file *nf;
399 nf = list_first_entry(dispose, struct nfsd_file, nf_lru);
416 struct nfsd_file *nf = list_first_entry(dispose,
417 struct nfsd_file, nf_lru);
447 struct nfsd_file *nf = list_entry(item, struct nfsd_file, nf_lru);
531 * nfsd_file_cond_queue - conditionally unhash and queue a nfsd_file
532 * @nf: nfsd_file to attempt to queue
535 * Unhash an nfsd_file, try to get a reference to it, and then put that
539 nfsd_file_cond_queue(struct nfsd_file *nf, struct list_head *dispose)
568 * An nfsd_file represents a struct file being held open on behalf of nfsd.
576 * refcounts go to zero. The actual free of an nfsd_file can be expensive,
583 struct nfsd_file *nf;
597 * nfsd_file_close_inode - attempt a delayed close of a nfsd_file
615 * nfsd_file_close_inode_sync - attempt to forcibly close a nfsd_file
627 struct nfsd_file *nf;
634 nf = list_first_entry(&dispose, struct nfsd_file, nf_lru);
728 nfsd_file_slab = kmem_cache_create("nfsd_file",
729 sizeof(struct nfsd_file), 0, 0, NULL);
795 * Walk the nfsd_file cache and close out any that match @net. If @net is NULL,
803 struct nfsd_file *nf;
923 static struct nfsd_file *
929 struct nfsd_file *nf;
967 struct nfsd_file *nf;
987 struct nfsd_file **pnf, bool want_gc)
991 struct nfsd_file *new, *nf;
1126 * nfsd_file_acquire_gc - Get a struct nfsd_file with an open file
1130 * @pnf: OUT: new or found "struct nfsd_file" object
1132 * The nfsd_file object returned by this API is reference-counted
1138 * %nfs_ok - @pnf points to an nfsd_file with its reference
1145 unsigned int may_flags, struct nfsd_file **pnf)
1151 * nfsd_file_acquire - Get a struct nfsd_file with an open file
1155 * @pnf: OUT: new or found "struct nfsd_file" object
1162 * %nfs_ok - @pnf points to an nfsd_file with its reference
1169 unsigned int may_flags, struct nfsd_file **pnf)
1175 * nfsd_file_acquire_opened - Get a struct nfsd_file using existing open file
1180 * @pnf: OUT: new or found "struct nfsd_file" object
1182 * Acquire a nfsd_file object that is not GC'ed. If one doesn't already exist,
1183 * and @file is non-NULL, use it to instantiate a new nfsd_file instead of
1187 * %nfs_ok - @pnf points to an nfsd_file with its reference
1195 struct nfsd_file **pnf)