Lines Matching refs:dir

87 	struct inode *dir = mapping->host;  in ext2_commit_chunk()  local
89 inode_inc_iversion(dir); in ext2_commit_chunk()
92 if (pos+len > dir->i_size) { in ext2_commit_chunk()
93 i_size_write(dir, pos+len); in ext2_commit_chunk()
94 mark_inode_dirty(dir); in ext2_commit_chunk()
101 struct inode *dir = page->mapping->host; in ext2_check_page() local
102 struct super_block *sb = dir->i_sb; in ext2_check_page()
103 unsigned chunk_size = ext2_chunk_size(dir); in ext2_check_page()
110 if ((dir->i_size >> PAGE_SHIFT) == page->index) { in ext2_check_page()
111 limit = dir->i_size & ~PAGE_MASK; in ext2_check_page()
144 "of chunk size", dir->i_ino); in ext2_check_page()
164 dir->i_ino, error, (page->index<<PAGE_SHIFT)+offs, in ext2_check_page()
174 dir->i_ino, (page->index<<PAGE_SHIFT)+offs, in ext2_check_page()
189 static void *ext2_get_page(struct inode *dir, unsigned long n, in ext2_get_page() argument
192 struct address_space *mapping = dir->i_mapping; in ext2_get_page()
341 struct ext2_dir_entry_2 *ext2_find_entry (struct inode *dir, in ext2_find_entry() argument
348 unsigned long npages = dir_pages(dir); in ext2_find_entry()
350 struct ext2_inode_info *ei = EXT2_I(dir); in ext2_find_entry()
364 char *kaddr = ext2_get_page(dir, n, 0, &page); in ext2_find_entry()
369 kaddr += ext2_last_byte(dir, n) - reclen; in ext2_find_entry()
372 ext2_error(dir->i_sb, __func__, in ext2_find_entry()
386 if (unlikely(n > (dir->i_blocks >> (PAGE_SHIFT - 9)))) { in ext2_find_entry()
387 ext2_error(dir->i_sb, __func__, in ext2_find_entry()
389 dir->i_ino, dir->i_size, in ext2_find_entry()
390 (unsigned long long)dir->i_blocks); in ext2_find_entry()
415 struct ext2_dir_entry_2 *ext2_dotdot(struct inode *dir, struct page **p) in ext2_dotdot() argument
417 ext2_dirent *de = ext2_get_page(dir, 0, 0, p); in ext2_dotdot()
424 int ext2_inode_by_name(struct inode *dir, const struct qstr *child, ino_t *ino) in ext2_inode_by_name() argument
429 de = ext2_find_entry(dir, child, &page); in ext2_inode_by_name()
444 static int ext2_handle_dirsync(struct inode *dir) in ext2_handle_dirsync() argument
448 err = filemap_write_and_wait(dir->i_mapping); in ext2_handle_dirsync()
450 err = sync_inode_metadata(dir, 1); in ext2_handle_dirsync()
454 int ext2_set_link(struct inode *dir, struct ext2_dir_entry_2 *de, in ext2_set_link() argument
471 dir->i_mtime = inode_set_ctime_current(dir); in ext2_set_link()
472 EXT2_I(dir)->i_flags &= ~EXT2_BTREE_FL; in ext2_set_link()
473 mark_inode_dirty(dir); in ext2_set_link()
474 return ext2_handle_dirsync(dir); in ext2_set_link()
482 struct inode *dir = d_inode(dentry->d_parent); in ext2_add_link() local
485 unsigned chunk_size = ext2_chunk_size(dir); in ext2_add_link()
490 unsigned long npages = dir_pages(dir); in ext2_add_link()
501 char *kaddr = ext2_get_page(dir, n, 0, &page); in ext2_add_link()
507 dir_end = kaddr + ext2_last_byte(dir, n); in ext2_add_link()
520 ext2_error(dir->i_sb, __func__, in ext2_add_link()
558 dir->i_mtime = inode_set_ctime_current(dir); in ext2_add_link()
559 EXT2_I(dir)->i_flags &= ~EXT2_BTREE_FL; in ext2_add_link()
560 mark_inode_dirty(dir); in ext2_add_link()
561 err = ext2_handle_dirsync(dir); in ext2_add_link()
575 int ext2_delete_entry(struct ext2_dir_entry_2 *dir, struct page *page) in ext2_delete_entry() argument
578 char *kaddr = (char *)((unsigned long)dir & PAGE_MASK); in ext2_delete_entry()
579 unsigned from = offset_in_page(dir) & ~(ext2_chunk_size(inode)-1); in ext2_delete_entry()
580 unsigned to = offset_in_page(dir) + in ext2_delete_entry()
581 ext2_rec_len_from_disk(dir->rec_len); in ext2_delete_entry()
587 while ((char*)de < (char*)dir) { in ext2_delete_entry()
607 dir->inode = 0; in ext2_delete_entry()