This commit was manufactured by cvs2svn to create tag
[linux-2.6.git] / fs / fs-writeback.c
index 1369676..5f3ccf9 100644 (file)
@@ -213,9 +213,8 @@ __sync_single_inode(struct inode *inode, struct writeback_control *wbc)
                } else if (inode->i_state & I_DIRTY) {
                        /*
                         * Someone redirtied the inode while were writing back
-                        * the pages.
+                        * the pages: nothing to do.
                         */
-                       list_move(&inode->i_list, &sb->s_dirty);
                } else if (atomic_read(&inode->i_count)) {
                        /*
                         * The inode is clean, inuse
@@ -226,7 +225,6 @@ __sync_single_inode(struct inode *inode, struct writeback_control *wbc)
                         * The inode is clean, unused
                         */
                        list_move(&inode->i_list, &inode_unused);
-                       inodes_stat.nr_unused++;
                }
        }
        wake_up_inode(inode);
@@ -360,7 +358,6 @@ sync_sb_inodes(struct super_block *sb, struct writeback_control *wbc)
                        list_move(&inode->i_list, &sb->s_dirty);
                }
                spin_unlock(&inode_lock);
-               cond_resched();
                iput(inode);
                spin_lock(&inode_lock);
                if (wbc->nr_to_write <= 0)
@@ -393,7 +390,6 @@ writeback_inodes(struct writeback_control *wbc)
 {
        struct super_block *sb;
 
-       might_sleep();
        spin_lock(&inode_lock);
        spin_lock(&sb_lock);
 restart:
@@ -549,7 +545,6 @@ void write_inode_now(struct inode *inode, int sync)
        if (inode->i_mapping->backing_dev_info->memory_backed)
                return;
 
-       might_sleep();
        spin_lock(&inode_lock);
        __writeback_single_inode(inode, &wbc);
        spin_unlock(&inode_lock);