[PATCH] kill hugelbfs_do_delete_inode
hugetlbfs_do_delete_inode is the same as generic_delete_inode now, so remove it in favour of the latter. Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
parent
149f4211af
commit
6b09b9df05
|
@ -229,42 +229,6 @@ static void hugetlbfs_delete_inode(struct inode *inode)
|
|||
clear_inode(inode);
|
||||
}
|
||||
|
||||
static void hugetlbfs_do_delete_inode(struct inode *inode)
|
||||
{
|
||||
struct super_operations *op = inode->i_sb->s_op;
|
||||
|
||||
list_del_init(&inode->i_list);
|
||||
list_del_init(&inode->i_sb_list);
|
||||
inode->i_state |= I_FREEING;
|
||||
inodes_stat.nr_inodes--;
|
||||
spin_unlock(&inode_lock);
|
||||
|
||||
security_inode_delete(inode);
|
||||
|
||||
if (op->delete_inode) {
|
||||
void (*delete)(struct inode *) = op->delete_inode;
|
||||
if (!is_bad_inode(inode))
|
||||
DQUOT_INIT(inode);
|
||||
/* Filesystems implementing their own
|
||||
* s_op->delete_inode are required to call
|
||||
* truncate_inode_pages and clear_inode()
|
||||
* internally
|
||||
*/
|
||||
delete(inode);
|
||||
} else {
|
||||
truncate_inode_pages(&inode->i_data, 0);
|
||||
clear_inode(inode);
|
||||
}
|
||||
|
||||
spin_lock(&inode_lock);
|
||||
hlist_del_init(&inode->i_hash);
|
||||
spin_unlock(&inode_lock);
|
||||
wake_up_inode(inode);
|
||||
if (inode->i_state != I_CLEAR)
|
||||
BUG();
|
||||
destroy_inode(inode);
|
||||
}
|
||||
|
||||
static void hugetlbfs_forget_inode(struct inode *inode)
|
||||
{
|
||||
struct super_block *super_block = inode->i_sb;
|
||||
|
@ -301,7 +265,7 @@ out_truncate:
|
|||
static void hugetlbfs_drop_inode(struct inode *inode)
|
||||
{
|
||||
if (!inode->i_nlink)
|
||||
hugetlbfs_do_delete_inode(inode);
|
||||
generic_delete_inode(inode);
|
||||
else
|
||||
hugetlbfs_forget_inode(inode);
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue