Loading fs/ext2/dir.c +7 −7 Original line number Diff line number Diff line Loading @@ -355,10 +355,10 @@ ext2_readdir (struct file * filp, void * dirent, filldir_t filldir) * Entry is guaranteed to be valid. */ struct ext2_dir_entry_2 *ext2_find_entry (struct inode * dir, struct dentry *dentry, struct page ** res_page) struct qstr *child, struct page ** res_page) { const char *name = dentry->d_name.name; int namelen = dentry->d_name.len; const char *name = child->name; int namelen = child->len; unsigned reclen = EXT2_DIR_REC_LEN(namelen); unsigned long start, n; unsigned long npages = dir_pages(dir); Loading Loading @@ -431,13 +431,13 @@ struct ext2_dir_entry_2 * ext2_dotdot (struct inode *dir, struct page **p) return de; } ino_t ext2_inode_by_name(struct inode * dir, struct dentry *dentry) ino_t ext2_inode_by_name(struct inode *dir, struct qstr *child) { ino_t res = 0; struct ext2_dir_entry_2 *de; struct page *page; de = ext2_find_entry (dir, dentry, &page); de = ext2_find_entry (dir, child, &page); if (de) { res = le32_to_cpu(de->inode); ext2_put_page(page); Loading fs/ext2/ext2.h +2 −2 Original line number Diff line number Diff line Loading @@ -105,9 +105,9 @@ extern void ext2_rsv_window_add(struct super_block *sb, struct ext2_reserve_wind /* dir.c */ extern int ext2_add_link (struct dentry *, struct inode *); extern ino_t ext2_inode_by_name(struct inode *, struct dentry *); extern ino_t ext2_inode_by_name(struct inode *, struct qstr *); extern int ext2_make_empty(struct inode *, struct inode *); extern struct ext2_dir_entry_2 * ext2_find_entry (struct inode *,struct dentry *, struct page **); extern struct ext2_dir_entry_2 * ext2_find_entry (struct inode *,struct qstr *, struct page **); extern int ext2_delete_entry (struct ext2_dir_entry_2 *, struct page *); extern int ext2_empty_dir (struct inode *); extern struct ext2_dir_entry_2 * ext2_dotdot (struct inode *, struct page **); Loading fs/ext2/namei.c +6 −11 Original line number Diff line number Diff line Loading @@ -60,7 +60,7 @@ static struct dentry *ext2_lookup(struct inode * dir, struct dentry *dentry, str if (dentry->d_name.len > EXT2_NAME_LEN) return ERR_PTR(-ENAMETOOLONG); ino = ext2_inode_by_name(dir, dentry); ino = ext2_inode_by_name(dir, &dentry->d_name); inode = NULL; if (ino) { inode = ext2_iget(dir->i_sb, ino); Loading @@ -72,13 +72,8 @@ static struct dentry *ext2_lookup(struct inode * dir, struct dentry *dentry, str struct dentry *ext2_get_parent(struct dentry *child) { unsigned long ino; struct dentry dotdot; dotdot.d_name.name = ".."; dotdot.d_name.len = 2; ino = ext2_inode_by_name(child->d_inode, &dotdot); struct qstr dotdot = {.name = "..", .len = 2}; unsigned long ino = ext2_inode_by_name(child->d_inode, &dotdot); if (!ino) return ERR_PTR(-ENOENT); return d_obtain_alias(ext2_iget(child->d_inode->i_sb, ino)); Loading Loading @@ -246,7 +241,7 @@ static int ext2_unlink(struct inode * dir, struct dentry *dentry) struct page * page; int err = -ENOENT; de = ext2_find_entry (dir, dentry, &page); de = ext2_find_entry (dir, &dentry->d_name, &page); if (!de) goto out; Loading Loading @@ -288,7 +283,7 @@ static int ext2_rename (struct inode * old_dir, struct dentry * old_dentry, struct ext2_dir_entry_2 * old_de; int err = -ENOENT; old_de = ext2_find_entry (old_dir, old_dentry, &old_page); old_de = ext2_find_entry (old_dir, &old_dentry->d_name, &old_page); if (!old_de) goto out; Loading @@ -308,7 +303,7 @@ static int ext2_rename (struct inode * old_dir, struct dentry * old_dentry, goto out_dir; err = -ENOENT; new_de = ext2_find_entry (new_dir, new_dentry, &new_page); new_de = ext2_find_entry (new_dir, &new_dentry->d_name, &new_page); if (!new_de) goto out_dir; inode_inc_link_count(old_inode); Loading Loading
fs/ext2/dir.c +7 −7 Original line number Diff line number Diff line Loading @@ -355,10 +355,10 @@ ext2_readdir (struct file * filp, void * dirent, filldir_t filldir) * Entry is guaranteed to be valid. */ struct ext2_dir_entry_2 *ext2_find_entry (struct inode * dir, struct dentry *dentry, struct page ** res_page) struct qstr *child, struct page ** res_page) { const char *name = dentry->d_name.name; int namelen = dentry->d_name.len; const char *name = child->name; int namelen = child->len; unsigned reclen = EXT2_DIR_REC_LEN(namelen); unsigned long start, n; unsigned long npages = dir_pages(dir); Loading Loading @@ -431,13 +431,13 @@ struct ext2_dir_entry_2 * ext2_dotdot (struct inode *dir, struct page **p) return de; } ino_t ext2_inode_by_name(struct inode * dir, struct dentry *dentry) ino_t ext2_inode_by_name(struct inode *dir, struct qstr *child) { ino_t res = 0; struct ext2_dir_entry_2 *de; struct page *page; de = ext2_find_entry (dir, dentry, &page); de = ext2_find_entry (dir, child, &page); if (de) { res = le32_to_cpu(de->inode); ext2_put_page(page); Loading
fs/ext2/ext2.h +2 −2 Original line number Diff line number Diff line Loading @@ -105,9 +105,9 @@ extern void ext2_rsv_window_add(struct super_block *sb, struct ext2_reserve_wind /* dir.c */ extern int ext2_add_link (struct dentry *, struct inode *); extern ino_t ext2_inode_by_name(struct inode *, struct dentry *); extern ino_t ext2_inode_by_name(struct inode *, struct qstr *); extern int ext2_make_empty(struct inode *, struct inode *); extern struct ext2_dir_entry_2 * ext2_find_entry (struct inode *,struct dentry *, struct page **); extern struct ext2_dir_entry_2 * ext2_find_entry (struct inode *,struct qstr *, struct page **); extern int ext2_delete_entry (struct ext2_dir_entry_2 *, struct page *); extern int ext2_empty_dir (struct inode *); extern struct ext2_dir_entry_2 * ext2_dotdot (struct inode *, struct page **); Loading
fs/ext2/namei.c +6 −11 Original line number Diff line number Diff line Loading @@ -60,7 +60,7 @@ static struct dentry *ext2_lookup(struct inode * dir, struct dentry *dentry, str if (dentry->d_name.len > EXT2_NAME_LEN) return ERR_PTR(-ENAMETOOLONG); ino = ext2_inode_by_name(dir, dentry); ino = ext2_inode_by_name(dir, &dentry->d_name); inode = NULL; if (ino) { inode = ext2_iget(dir->i_sb, ino); Loading @@ -72,13 +72,8 @@ static struct dentry *ext2_lookup(struct inode * dir, struct dentry *dentry, str struct dentry *ext2_get_parent(struct dentry *child) { unsigned long ino; struct dentry dotdot; dotdot.d_name.name = ".."; dotdot.d_name.len = 2; ino = ext2_inode_by_name(child->d_inode, &dotdot); struct qstr dotdot = {.name = "..", .len = 2}; unsigned long ino = ext2_inode_by_name(child->d_inode, &dotdot); if (!ino) return ERR_PTR(-ENOENT); return d_obtain_alias(ext2_iget(child->d_inode->i_sb, ino)); Loading Loading @@ -246,7 +241,7 @@ static int ext2_unlink(struct inode * dir, struct dentry *dentry) struct page * page; int err = -ENOENT; de = ext2_find_entry (dir, dentry, &page); de = ext2_find_entry (dir, &dentry->d_name, &page); if (!de) goto out; Loading Loading @@ -288,7 +283,7 @@ static int ext2_rename (struct inode * old_dir, struct dentry * old_dentry, struct ext2_dir_entry_2 * old_de; int err = -ENOENT; old_de = ext2_find_entry (old_dir, old_dentry, &old_page); old_de = ext2_find_entry (old_dir, &old_dentry->d_name, &old_page); if (!old_de) goto out; Loading @@ -308,7 +303,7 @@ static int ext2_rename (struct inode * old_dir, struct dentry * old_dentry, goto out_dir; err = -ENOENT; new_de = ext2_find_entry (new_dir, new_dentry, &new_page); new_de = ext2_find_entry (new_dir, &new_dentry->d_name, &new_page); if (!new_de) goto out_dir; inode_inc_link_count(old_inode); Loading