mirror of
https://github.com/torvalds/linux.git
synced 2024-11-27 06:31:52 +00:00
fs/inode.c:clear_inode() is gone
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
This commit is contained in:
parent
644da5960d
commit
30140837f2
28
fs/inode.c
28
fs/inode.c
@ -306,29 +306,6 @@ void end_writeback(struct inode *inode)
|
||||
}
|
||||
EXPORT_SYMBOL(end_writeback);
|
||||
|
||||
/**
|
||||
* clear_inode - clear an inode
|
||||
* @inode: inode to clear
|
||||
*
|
||||
* This is called by the filesystem to tell us
|
||||
* that the inode is no longer useful. We just
|
||||
* terminate it with extreme prejudice.
|
||||
*/
|
||||
void clear_inode(struct inode *inode)
|
||||
{
|
||||
might_sleep();
|
||||
invalidate_inode_buffers(inode);
|
||||
|
||||
BUG_ON(inode->i_data.nrpages);
|
||||
BUG_ON(!(inode->i_state & I_FREEING));
|
||||
BUG_ON(inode->i_state & I_CLEAR);
|
||||
inode_sync_wait(inode);
|
||||
if (inode->i_sb->s_op->clear_inode)
|
||||
inode->i_sb->s_op->clear_inode(inode);
|
||||
inode->i_state = I_FREEING | I_CLEAR;
|
||||
}
|
||||
EXPORT_SYMBOL(clear_inode);
|
||||
|
||||
static void evict(struct inode *inode)
|
||||
{
|
||||
const struct super_operations *op = inode->i_sb->s_op;
|
||||
@ -338,7 +315,10 @@ static void evict(struct inode *inode)
|
||||
} else {
|
||||
if (inode->i_data.nrpages)
|
||||
truncate_inode_pages(&inode->i_data, 0);
|
||||
clear_inode(inode);
|
||||
invalidate_inode_buffers(inode);
|
||||
end_writeback(inode);
|
||||
if (op->clear_inode)
|
||||
op->clear_inode(inode);
|
||||
}
|
||||
if (S_ISBLK(inode->i_mode) && inode->i_bdev)
|
||||
bd_forget(inode);
|
||||
|
@ -2182,7 +2182,6 @@ extern void unlock_new_inode(struct inode *);
|
||||
|
||||
extern void __iget(struct inode * inode);
|
||||
extern void iget_failed(struct inode *);
|
||||
extern void clear_inode(struct inode *);
|
||||
extern void end_writeback(struct inode *);
|
||||
extern void destroy_inode(struct inode *);
|
||||
extern void __destroy_inode(struct inode *);
|
||||
|
Loading…
Reference in New Issue
Block a user