merge ext2 delete_inode and clear_inode, switch to ->evict_inode()
Subsystems (2)
PATCH 13/58 merge ext2 delete_inode and clear_inode, switch to ->evict_inode()
Signed-off-by Al Viro <[email protected]>
--- fs/ext2/ext2.h | 2 +- fs/ext2/ialloc.c | 13 ++++--------- fs/ext2/inode.c | 44 ++++++++++++++++++++++++++++++-------------- fs/ext2/super.c | 14 +------------- 4 files changed, 36 insertions(+), 37 deletions(-)
fs/ext2/ext2.h +1 -1
@@ -119,7 +119,7 @@ extern unsigned long ext2_count_free (struct buffer_head *, unsigned);/* inode.c */ extern struct inode *ext2_iget (struct super_block *,unsigned long );extern int ext2_write_inode (struct inode *,struct writeback_control *); -extern void ext2_delete_inode (struct inode *); +extern void ext2_evict_inode (struct inode *);extern int ext2_sync_inode (struct inode *);extern int ext2_get_block (struct inode *,sector_t ,struct buffer_head *,int );extern int ext2_setattr (struct dentry *,struct iattr *);
fs/ext2/ialloc.c +4 -9
@@ -118,19 +118,14 @@ void ext2_free_inode (struct inode * inode)* Note: we must free any quota before locking the superblock, * as writing the quota to disk may need the lock as well. */ -if (!is_bad_inode (inode)) { -/* Quota is already initialized in iput() */ -ext2_xattr_delete_inode (inode); -dquot_free_inode (inode); -dquot_drop (inode); - } +/* Quota is already initialized in iput() */ +ext2_xattr_delete_inode (inode); +dquot_free_inode (inode); +dquot_drop (inode); es =EXT2_SB (sb)->s_es; is_directory =S_ISDIR (inode->i_mode); -/* Do this BEFORE marking the inode not in use or returning an error */ -clear_inode (inode); -if (ino <EXT2_FIRST_INO (sb) || ino >le32_to_cpu (es->s_inodes_count)) { ext2_error (sb, "ext2_free_inode",
fs/ext2/inode.c +30 -14
56 lines not on this page · raw message
fs/ext2/super.c +1 -13
@@ -195,17 +195,6 @@ static void destroy_inodecache(void)kmem_cache_destroy (ext2_inode_cachep); } -static void ext2_clear_inode (struct inode *inode) -{ -struct ext2_block_alloc_info *rsv =EXT2_I (inode)->i_block_alloc_info; - -dquot_drop (inode); -ext2_discard_reservation (inode); -EXT2_I (inode)->i_block_alloc_info =NULL ; -if (unlikely (rsv)) -kfree (rsv); -} -static int ext2_show_options (struct seq_file *seq,struct vfsmount *vfs) {struct super_block *sb = vfs->mnt_sb;
@@ -299,13 +288,12 @@ static const struct super_operations ext2_sops = { .alloc_inode = ext2_alloc_inode, .destroy_inode = ext2_destroy_inode, .write_inode = ext2_write_inode, - .delete_inode = ext2_delete_inode, + .evict_inode = ext2_evict_inode, .put_super = ext2_put_super, .write_super = ext2_write_super, .sync_fs = ext2_sync_fs, .statfs = ext2_statfs, .remount_fs = ext2_remount, - .clear_inode = ext2_clear_inode, .show_options = ext2_show_options, #ifdef CONFIG_QUOTA .quota_read = ext2_quota_read,
Signature · 1 line
1.5.6.5
Al Viro:
fs/ext2/inode.c static void ext2_write_failed(struct address_space *mapping, loff_t to) · line 72
Quoted 10 lines
fs/ext2/inode.c +1
-1@@ -69,26 +69,42 @@ static void ext2_write_failed(struct address_space *mapping, loff_t to)/* * Called at the last iput() if i_nlink is zero. */ -void ext2_delete_inode (struct inode * inode) +void ext2_evict_inode (struct inode * inode)
Just a comment,
* Called at the last iput() regardless i_nlink count.
right?
J. R. Okajima