summaryrefslogtreecommitdiffstats
path: root/fs/hpfs/inode.c
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2010-06-07 00:18:40 -0400
committerAl Viro <viro@zeniv.linux.org.uk>2010-08-09 16:48:17 -0400
commitea544009206baa03d606161656618900260b48e5 (patch)
treea79545189692c066db2deaebc4505168b155b3df /fs/hpfs/inode.c
parent33b0daaa5557e9dadf4c27407fae7d316bab5686 (diff)
downloadlinux-ea544009206baa03d606161656618900260b48e5.tar.gz
linux-ea544009206baa03d606161656618900260b48e5.tar.bz2
linux-ea544009206baa03d606161656618900260b48e5.zip
switch hpfs to ->evict_inode()
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'fs/hpfs/inode.c')
-rw-r--r--fs/hpfs/inode.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/fs/hpfs/inode.c b/fs/hpfs/inode.c
index 3f3b397fd4e6..56f0da1cfd10 100644
--- a/fs/hpfs/inode.c
+++ b/fs/hpfs/inode.c
@@ -302,11 +302,13 @@ void hpfs_write_if_changed(struct inode *inode)
hpfs_write_inode(inode);
}
-void hpfs_delete_inode(struct inode *inode)
+void hpfs_evict_inode(struct inode *inode)
{
truncate_inode_pages(&inode->i_data, 0);
- lock_kernel();
- hpfs_remove_fnode(inode->i_sb, inode->i_ino);
- unlock_kernel();
- clear_inode(inode);
+ end_writeback(inode);
+ if (!inode->i_nlink) {
+ lock_kernel();
+ hpfs_remove_fnode(inode->i_sb, inode->i_ino);
+ unlock_kernel();
+ }
}