Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f053ddde authored by Al Viro's avatar Al Viro
Browse files

switch affs to ->evict_inode()



Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
parent 69c9e750
Loading
Loading
Loading
Loading
+1 −2
Original line number Diff line number Diff line
@@ -171,8 +171,7 @@ extern int affs_rename(struct inode *old_dir, struct dentry *old_dentry,
extern unsigned long		 affs_parent_ino(struct inode *dir);
extern struct inode		*affs_new_inode(struct inode *dir);
extern int			 affs_notify_change(struct dentry *dentry, struct iattr *attr);
extern void			 affs_delete_inode(struct inode *inode);
extern void			 affs_clear_inode(struct inode *inode);
extern void			 affs_evict_inode(struct inode *inode);
extern struct inode		*affs_iget(struct super_block *sb,
					unsigned long ino);
extern int			 affs_write_inode(struct inode *inode,
+12 −13
Original line number Diff line number Diff line
@@ -252,23 +252,19 @@ affs_notify_change(struct dentry *dentry, struct iattr *attr)
}

void
affs_delete_inode(struct inode *inode)
affs_evict_inode(struct inode *inode)
{
	pr_debug("AFFS: delete_inode(ino=%lu, nlink=%u)\n", inode->i_ino, inode->i_nlink);
	unsigned long cache_page;
	pr_debug("AFFS: evict_inode(ino=%lu, nlink=%u)\n", inode->i_ino, inode->i_nlink);
	truncate_inode_pages(&inode->i_data, 0);

	if (!inode->i_nlink) {
		inode->i_size = 0;
		affs_truncate(inode);
	clear_inode(inode);
	affs_free_block(inode->i_sb, inode->i_ino);
	}

void
affs_clear_inode(struct inode *inode)
{
	unsigned long cache_page;

	pr_debug("AFFS: clear_inode(ino=%lu, nlink=%u)\n", inode->i_ino, inode->i_nlink);

	invalidate_inode_buffers(inode);
	end_writeback(inode);
	affs_free_prealloc(inode);
	cache_page = (unsigned long)AFFS_I(inode)->i_lc;
	if (cache_page) {
@@ -280,6 +276,9 @@ affs_clear_inode(struct inode *inode)
	affs_brelse(AFFS_I(inode)->i_ext_bh);
	AFFS_I(inode)->i_ext_last = ~1;
	AFFS_I(inode)->i_ext_bh = NULL;

	if (!inode->i_nlink)
		affs_free_block(inode->i_sb, inode->i_ino);
}

struct inode *
+1 −2
Original line number Diff line number Diff line
@@ -140,8 +140,7 @@ static const struct super_operations affs_sops = {
	.alloc_inode	= affs_alloc_inode,
	.destroy_inode	= affs_destroy_inode,
	.write_inode	= affs_write_inode,
	.delete_inode	= affs_delete_inode,
	.clear_inode	= affs_clear_inode,
	.evict_inode	= affs_evict_inode,
	.put_super	= affs_put_super,
	.write_super	= affs_write_super,
	.sync_fs	= affs_sync_fs,