lkml.org 
[lkml]   [2005]   [Oct]   [25]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
Subjectfix-nr_unused-accounting-and-avoid-recursing-in-iput-with-i_will_free-set.patch
Hello

The patch mentioned in the subject checks I_WILL_FREE bit in inode->i_flags,
while generic_forget_inode sets it in inode->i_state.
Is it really supposed to be so?
If not, does the attached patch look correct?

generic_forget_inode sets I_WILL_FREE bit in inode->i_state.
__writeback_single_inode checks that bit in inode->i_flags.
This patch changes __writeback_single_inode to check inode->i_state.


fs/fs-writeback.c | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)

diff -puN fs/fs-writeback.c~writeback_single_inode-warn-fix fs/fs-writeback.c
--- linux-2.6.14-rc5-mm1/fs/fs-writeback.c~writeback_single_inode-warn-fix 2005-10-25 15:52:13.857616000 +0400
+++ linux-2.6.14-rc5-mm1-root/fs/fs-writeback.c 2005-10-25 15:52:37.051065500 +0400
@@ -248,9 +248,9 @@ __writeback_single_inode(struct inode *i
wait_queue_head_t *wqh;

if (!atomic_read(&inode->i_count))
- WARN_ON(!(inode->i_flags & I_WILL_FREE));
+ WARN_ON(!(inode->i_state & I_WILL_FREE));
else
- WARN_ON(inode->i_flags & I_WILL_FREE);
+ WARN_ON(inode->i_state & I_WILL_FREE);

if ((wbc->sync_mode != WB_SYNC_ALL) && (inode->i_state & I_LOCK)) {
list_move(&inode->i_list, &inode->i_sb->s_dirty);
_
\
 
 \ /
  Last update: 2005-10-25 15:11    [W:2.542 / U:0.012 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site