1 Index: RH_2_6_9_55/fs/fs-writeback.c
2 ===================================================================
3 --- RH_2_6_9_55.orig/fs/fs-writeback.c
4 +++ RH_2_6_9_55/fs/fs-writeback.c
6 * The inode is clean, unused
8 list_move(&inode->i_list, &inode_unused);
9 - inodes_stat.nr_unused++;
14 __writeback_single_inode(struct inode *inode,
15 struct writeback_control *wbc)
17 + if (!atomic_read(&inode->i_count))
18 + WARN_ON(!(inode->i_state & I_WILL_FREE));
20 + WARN_ON(inode->i_state & I_WILL_FREE);
22 if ((wbc->sync_mode != WB_SYNC_ALL) && (inode->i_state & I_LOCK)) {
23 list_move(&inode->i_list, &inode->i_sb->s_dirty);
26 * It's a data-integrity sync. We must wait.
28 while (inode->i_state & I_LOCK) {
30 spin_unlock(&inode_lock);
31 __wait_on_inode(inode);
33 spin_lock(&inode_lock);
35 return __sync_single_inode(inode, wbc);
36 Index: RH_2_6_9_55/fs/inode.c
37 ===================================================================
38 --- RH_2_6_9_55.orig/fs/inode.c
39 +++ RH_2_6_9_55/fs/inode.c
41 if (inode->i_data.nrpages)
42 truncate_inode_pages(&inode->i_data, 0);
44 + wake_up_inode(inode);