提交 62aff86f 编写于 作者: A Al Viro

switch jfs to ->evict_inode()

Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
上级 ea544009
...@@ -145,31 +145,32 @@ int jfs_write_inode(struct inode *inode, struct writeback_control *wbc) ...@@ -145,31 +145,32 @@ int jfs_write_inode(struct inode *inode, struct writeback_control *wbc)
return 0; return 0;
} }
void jfs_delete_inode(struct inode *inode) void jfs_evict_inode(struct inode *inode)
{ {
jfs_info("In jfs_delete_inode, inode = 0x%p", inode); jfs_info("In jfs_evict_inode, inode = 0x%p", inode);
if (!is_bad_inode(inode)) if (!inode->i_nlink && !is_bad_inode(inode)) {
dquot_initialize(inode); dquot_initialize(inode);
if (!is_bad_inode(inode) && if (JFS_IP(inode)->fileset == FILESYSTEM_I) {
(JFS_IP(inode)->fileset == FILESYSTEM_I)) { truncate_inode_pages(&inode->i_data, 0);
truncate_inode_pages(&inode->i_data, 0);
if (test_cflag(COMMIT_Freewmap, inode)) if (test_cflag(COMMIT_Freewmap, inode))
jfs_free_zero_link(inode); jfs_free_zero_link(inode);
diFree(inode); diFree(inode);
/* /*
* Free the inode from the quota allocation. * Free the inode from the quota allocation.
*/ */
dquot_initialize(inode); dquot_initialize(inode);
dquot_free_inode(inode); dquot_free_inode(inode);
dquot_drop(inode); }
} else {
truncate_inode_pages(&inode->i_data, 0);
} }
end_writeback(inode);
clear_inode(inode); dquot_drop(inode);
} }
void jfs_dirty_inode(struct inode *inode) void jfs_dirty_inode(struct inode *inode)
......
...@@ -27,7 +27,7 @@ extern long jfs_compat_ioctl(struct file *, unsigned int, unsigned long); ...@@ -27,7 +27,7 @@ extern long jfs_compat_ioctl(struct file *, unsigned int, unsigned long);
extern struct inode *jfs_iget(struct super_block *, unsigned long); extern struct inode *jfs_iget(struct super_block *, unsigned long);
extern int jfs_commit_inode(struct inode *, int); extern int jfs_commit_inode(struct inode *, int);
extern int jfs_write_inode(struct inode *, struct writeback_control *); extern int jfs_write_inode(struct inode *, struct writeback_control *);
extern void jfs_delete_inode(struct inode *); extern void jfs_evict_inode(struct inode *);
extern void jfs_dirty_inode(struct inode *); extern void jfs_dirty_inode(struct inode *);
extern void jfs_truncate(struct inode *); extern void jfs_truncate(struct inode *);
extern void jfs_truncate_nolock(struct inode *, loff_t); extern void jfs_truncate_nolock(struct inode *, loff_t);
......
...@@ -132,11 +132,6 @@ static void jfs_destroy_inode(struct inode *inode) ...@@ -132,11 +132,6 @@ static void jfs_destroy_inode(struct inode *inode)
kmem_cache_free(jfs_inode_cachep, ji); kmem_cache_free(jfs_inode_cachep, ji);
} }
static void jfs_clear_inode(struct inode *inode)
{
dquot_drop(inode);
}
static int jfs_statfs(struct dentry *dentry, struct kstatfs *buf) static int jfs_statfs(struct dentry *dentry, struct kstatfs *buf)
{ {
struct jfs_sb_info *sbi = JFS_SBI(dentry->d_sb); struct jfs_sb_info *sbi = JFS_SBI(dentry->d_sb);
...@@ -765,8 +760,7 @@ static const struct super_operations jfs_super_operations = { ...@@ -765,8 +760,7 @@ static const struct super_operations jfs_super_operations = {
.destroy_inode = jfs_destroy_inode, .destroy_inode = jfs_destroy_inode,
.dirty_inode = jfs_dirty_inode, .dirty_inode = jfs_dirty_inode,
.write_inode = jfs_write_inode, .write_inode = jfs_write_inode,
.delete_inode = jfs_delete_inode, .evict_inode = jfs_evict_inode,
.clear_inode = jfs_clear_inode,
.put_super = jfs_put_super, .put_super = jfs_put_super,
.sync_fs = jfs_sync_fs, .sync_fs = jfs_sync_fs,
.freeze_fs = jfs_freeze, .freeze_fs = jfs_freeze,
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册