Lines Matching refs:inode

64 static inline unsigned ext2_chunk_size(struct inode *inode)  in ext2_chunk_size()  argument
66 return inode->i_sb->s_blocksize; in ext2_chunk_size()
74 ext2_last_byte(struct inode *inode, unsigned long page_nr) in ext2_last_byte() argument
76 unsigned last_byte = inode->i_size; in ext2_last_byte()
87 struct inode *dir = mapping->host; in ext2_commit_chunk()
101 struct inode *dir = page->mapping->host; in ext2_check_page()
129 if (unlikely(le32_to_cpu(p->inode) > max_inumber)) in ext2_check_page()
165 (unsigned long) le32_to_cpu(p->inode), in ext2_check_page()
175 (unsigned long) le32_to_cpu(p->inode)); in ext2_check_page()
189 static void *ext2_get_page(struct inode *dir, unsigned long n, in ext2_get_page()
221 if (!de->inode) in ext2_match()
248 static inline void ext2_set_de_type(ext2_dirent *de, struct inode *inode) in ext2_set_de_type() argument
250 if (EXT2_HAS_INCOMPAT_FEATURE(inode->i_sb, EXT2_FEATURE_INCOMPAT_FILETYPE)) in ext2_set_de_type()
251 de->file_type = fs_umode_to_ftype(inode->i_mode); in ext2_set_de_type()
260 struct inode *inode = file_inode(file); in ext2_readdir() local
261 struct super_block *sb = inode->i_sb; in ext2_readdir()
264 unsigned long npages = dir_pages(inode); in ext2_readdir()
265 unsigned chunk_mask = ~(ext2_chunk_size(inode)-1); in ext2_readdir()
266 bool need_revalidate = !inode_eq_iversion(inode, file->f_version); in ext2_readdir()
269 if (pos > inode->i_size - EXT2_DIR_REC_LEN(1)) in ext2_readdir()
278 char *kaddr = ext2_get_page(inode, n, 0, &page); in ext2_readdir()
284 inode->i_ino); in ext2_readdir()
293 file->f_version = inode_query_iversion(inode); in ext2_readdir()
297 limit = kaddr + ext2_last_byte(inode, n) - EXT2_DIR_REC_LEN(1); in ext2_readdir()
305 if (de->inode) { in ext2_readdir()
312 le32_to_cpu(de->inode), in ext2_readdir()
341 struct ext2_dir_entry_2 *ext2_find_entry (struct inode *dir, in ext2_find_entry()
415 struct ext2_dir_entry_2 *ext2_dotdot(struct inode *dir, struct page **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()
433 *ino = le32_to_cpu(de->inode); in ext2_inode_by_name()
444 static int ext2_handle_dirsync(struct inode *dir) in ext2_handle_dirsync()
454 int ext2_set_link(struct inode *dir, struct ext2_dir_entry_2 *de, in ext2_set_link()
455 struct page *page, struct inode *inode, bool update_times) in ext2_set_link() argument
467 de->inode = cpu_to_le32(inode->i_ino); in ext2_set_link()
468 ext2_set_de_type(de, inode); in ext2_set_link()
480 int ext2_add_link (struct dentry *dentry, struct inode *inode) in ext2_add_link() argument
482 struct inode *dir = d_inode(dentry->d_parent); in ext2_add_link()
516 de->inode = 0; in ext2_add_link()
530 if (!de->inode && rec_len >= reclen) in ext2_add_link()
547 if (de->inode) { in ext2_add_link()
555 de->inode = cpu_to_le32(inode->i_ino); in ext2_add_link()
556 ext2_set_de_type (de, inode); in ext2_add_link()
577 struct inode *inode = page->mapping->host; in ext2_delete_entry() local
579 unsigned from = offset_in_page(dir) & ~(ext2_chunk_size(inode)-1); in ext2_delete_entry()
589 ext2_error(inode->i_sb, __func__, in ext2_delete_entry()
607 dir->inode = 0; in ext2_delete_entry()
609 inode->i_mtime = inode_set_ctime_current(inode); in ext2_delete_entry()
610 EXT2_I(inode)->i_flags &= ~EXT2_BTREE_FL; in ext2_delete_entry()
611 mark_inode_dirty(inode); in ext2_delete_entry()
612 return ext2_handle_dirsync(inode); in ext2_delete_entry()
618 int ext2_make_empty(struct inode *inode, struct inode *parent) in ext2_make_empty() argument
620 struct page *page = grab_cache_page(inode->i_mapping, 0); in ext2_make_empty()
621 unsigned chunk_size = ext2_chunk_size(inode); in ext2_make_empty()
640 de->inode = cpu_to_le32(inode->i_ino); in ext2_make_empty()
641 ext2_set_de_type (de, inode); in ext2_make_empty()
646 de->inode = cpu_to_le32(parent->i_ino); in ext2_make_empty()
648 ext2_set_de_type (de, inode); in ext2_make_empty()
651 err = ext2_handle_dirsync(inode); in ext2_make_empty()
660 int ext2_empty_dir (struct inode * inode) in ext2_empty_dir() argument
664 unsigned long i, npages = dir_pages(inode); in ext2_empty_dir()
669 kaddr = ext2_get_page(inode, i, 0, &page); in ext2_empty_dir()
674 kaddr += ext2_last_byte(inode, i) - EXT2_DIR_REC_LEN(1); in ext2_empty_dir()
678 ext2_error(inode->i_sb, __func__, in ext2_empty_dir()
683 if (de->inode != 0) { in ext2_empty_dir()
690 if (de->inode != in ext2_empty_dir()
691 cpu_to_le32(inode->i_ino)) in ext2_empty_dir()