Lines Matching refs:dir

22 static struct dentry *afs_lookup(struct inode *dir, struct dentry *dentry,
31 static int afs_create(struct inode *dir, struct dentry *dentry, umode_t mode,
33 static int afs_mkdir(struct inode *dir, struct dentry *dentry, umode_t mode);
34 static int afs_rmdir(struct inode *dir, struct dentry *dentry);
35 static int afs_unlink(struct inode *dir, struct dentry *dentry);
36 static int afs_link(struct dentry *from, struct inode *dir,
38 static int afs_symlink(struct inode *dir, struct dentry *dentry,
131 static inline void afs_dir_check_page(struct inode *dir, struct page *page) in afs_dir_check_page() argument
145 __func__, dir->i_ino, qty, in afs_dir_check_page()
152 latter = dir->i_size - page_offset(page); in afs_dir_check_page()
164 __func__, dir->i_ino, tmp, qty, in afs_dir_check_page()
190 static struct page *afs_dir_get_page(struct inode *dir, unsigned long index, in afs_dir_get_page() argument
194 _enter("{%lu},%lu", dir->i_ino, index); in afs_dir_get_page()
196 page = read_cache_page(dir->i_mapping, index, afs_page_filler, key); in afs_dir_get_page()
200 afs_dir_check_page(dir, page); in afs_dir_get_page()
321 static int afs_dir_iterate(struct inode *dir, struct dir_context *ctx, in afs_dir_iterate() argument
330 _enter("{%lu},%u,,", dir->i_ino, (unsigned)ctx->pos); in afs_dir_iterate()
332 if (test_bit(AFS_VNODE_DELETED, &AFS_FS_I(dir)->flags)) { in afs_dir_iterate()
343 while (ctx->pos < dir->i_size) { in afs_dir_iterate()
347 page = afs_dir_get_page(dir, blkoff / PAGE_SIZE, key); in afs_dir_iterate()
369 } while (ctx->pos < dir->i_size && blkoff < limit); in afs_dir_iterate()
426 static int afs_do_lookup(struct inode *dir, struct dentry *dentry, in afs_do_lookup() argument
429 struct afs_super_info *as = dir->i_sb->s_fs_info; in afs_do_lookup()
437 _enter("{%lu},%p{%pd},", dir->i_ino, dentry, dentry); in afs_do_lookup()
440 ret = afs_dir_iterate(dir, &cookie.ctx, key); in afs_do_lookup()
462 int ret, struct dentry *dentry, struct inode *dir, struct key *key, in afs_try_auto_mntpt() argument
466 struct afs_vnode *vnode = AFS_FS_I(dir); in afs_try_auto_mntpt()
476 inode = afs_iget_autocell(dir, devname, strlen(devname), key); in afs_try_auto_mntpt()
494 static struct dentry *afs_lookup(struct inode *dir, struct dentry *dentry, in afs_lookup() argument
503 vnode = AFS_FS_I(dir); in afs_lookup()
533 ret = afs_do_lookup(dir, dentry, &fid, key); in afs_lookup()
535 inode = afs_try_auto_mntpt(ret, dentry, dir, key, &fid); in afs_lookup()
554 inode = afs_iget(dir->i_sb, key, &fid, NULL, NULL); in afs_lookup()
579 struct afs_vnode *vnode, *dir; in afs_d_revalidate() local
604 dir = AFS_FS_I(d_inode(parent)); in afs_d_revalidate()
607 if (test_bit(AFS_VNODE_MODIFIED, &dir->flags)) in afs_d_revalidate()
608 afs_validate(dir, key); in afs_d_revalidate()
610 if (test_bit(AFS_VNODE_DELETED, &dir->flags)) { in afs_d_revalidate()
615 dir_version = (void *) (unsigned long) dir->status.data_version; in afs_d_revalidate()
622 ret = afs_do_lookup(&dir->vfs_inode, dentry, &fid, key); in afs_d_revalidate()
730 static int afs_mkdir(struct inode *dir, struct dentry *dentry, umode_t mode) in afs_mkdir() argument
741 dvnode = AFS_FS_I(dir); in afs_mkdir()
758 inode = afs_iget(dir->i_sb, key, &fid, &status, &cb); in afs_mkdir()
796 static int afs_rmdir(struct inode *dir, struct dentry *dentry) in afs_rmdir() argument
802 dvnode = AFS_FS_I(dir); in afs_rmdir()
838 static int afs_unlink(struct inode *dir, struct dentry *dentry) in afs_unlink() argument
844 dvnode = AFS_FS_I(dir); in afs_unlink()
906 static int afs_create(struct inode *dir, struct dentry *dentry, umode_t mode, in afs_create() argument
918 dvnode = AFS_FS_I(dir); in afs_create()
935 inode = afs_iget(dir->i_sb, key, &fid, &status, &cb); in afs_create()
973 static int afs_link(struct dentry *from, struct inode *dir, in afs_link() argument
981 dvnode = AFS_FS_I(dir); in afs_link()
1015 static int afs_symlink(struct inode *dir, struct dentry *dentry, in afs_symlink() argument
1026 dvnode = AFS_FS_I(dir); in afs_symlink()
1047 inode = afs_iget(dir->i_sb, key, &fid, &status, NULL); in afs_symlink()