Lines Matching refs:file

32 static void fuse_add_dirent_to_cache(struct file *file,  in fuse_add_dirent_to_cache()  argument
35 struct fuse_inode *fi = get_fuse_inode(file_inode(file)); in fuse_add_dirent_to_cache()
65 page = find_lock_page(file->f_mapping, index); in fuse_add_dirent_to_cache()
67 page = find_or_create_page(file->f_mapping, index, in fuse_add_dirent_to_cache()
68 mapping_gfp_mask(file->f_mapping)); in fuse_add_dirent_to_cache()
94 static void fuse_readdir_cache_end(struct file *file, loff_t pos) in fuse_readdir_cache_end() argument
96 struct fuse_inode *fi = get_fuse_inode(file_inode(file)); in fuse_readdir_cache_end()
111 truncate_inode_pages(file->f_mapping, end); in fuse_readdir_cache_end()
114 static bool fuse_emit(struct file *file, struct dir_context *ctx, in fuse_emit() argument
117 struct fuse_file *ff = file->private_data; in fuse_emit()
120 fuse_add_dirent_to_cache(file, dirent, ctx->pos); in fuse_emit()
126 static int parse_dirfile(char *buf, size_t nbytes, struct file *file, in parse_dirfile() argument
139 if (!fuse_emit(file, ctx, dirent)) in parse_dirfile()
150 static int fuse_direntplus_link(struct file *file, in fuse_direntplus_link() argument
156 struct dentry *parent = file->f_path.dentry; in fuse_direntplus_link()
257 static void fuse_force_forget(struct file *file, u64 nodeid) in fuse_force_forget() argument
259 struct inode *inode = file_inode(file); in fuse_force_forget()
278 static int parse_dirplusfile(char *buf, size_t nbytes, struct file *file, in parse_dirplusfile() argument
306 over = !fuse_emit(file, ctx, dirent); in parse_dirplusfile()
314 ret = fuse_direntplus_link(file, direntplus, attr_version); in parse_dirplusfile()
316 fuse_force_forget(file, direntplus->entry_out.nodeid); in parse_dirplusfile()
322 static int fuse_readdir_uncached(struct file *file, struct dir_context *ctx) in fuse_readdir_uncached() argument
327 struct inode *inode = file_inode(file); in fuse_readdir_uncached()
346 fuse_read_args_fill(&ia, file, ctx->pos, PAGE_SIZE, in fuse_readdir_uncached()
349 fuse_read_args_fill(&ia, file, ctx->pos, PAGE_SIZE, in fuse_readdir_uncached()
357 struct fuse_file *ff = file->private_data; in fuse_readdir_uncached()
360 fuse_readdir_cache_end(file, ctx->pos); in fuse_readdir_uncached()
363 file, ctx, attr_version); in fuse_readdir_uncached()
365 res = parse_dirfile(page_address(page), res, file, in fuse_readdir_uncached()
436 static int fuse_readdir_cached(struct file *file, struct dir_context *ctx) in fuse_readdir_cached() argument
438 struct fuse_file *ff = file->private_data; in fuse_readdir_cached()
439 struct inode *inode = file_inode(file); in fuse_readdir_cached()
459 int err = fuse_update_attributes(inode, file); in fuse_readdir_cached()
519 page = find_get_page_flags(file->f_mapping, index, in fuse_readdir_cached()
576 int fuse_readdir(struct file *file, struct dir_context *ctx) in fuse_readdir() argument
578 struct fuse_file *ff = file->private_data; in fuse_readdir()
579 struct inode *inode = file_inode(file); in fuse_readdir()
589 err = fuse_readdir_cached(file, ctx); in fuse_readdir()
591 err = fuse_readdir_uncached(file, ctx); in fuse_readdir()