[JFFS2] Fix hanging close for /dev/mtd character device.
authorJoakim Tjernlund <Joakim.Tjernlund@transmode.se>
Tue, 26 Jun 2007 21:32:10 +0000 (23:32 +0200)
committerDavid Woodhouse <dwmw2@infradead.org>
Thu, 28 Jun 2007 17:37:48 +0000 (18:37 +0100)
When pdflush is erasing lots of sectors, drivers calling
mtd->sync will hang until all blocks are erased. Be nicer.

Signed-off-by: Joakim Tjernlund <Joakim.Tjernlund@transmode.se>
Signed-off-by: David Woodhouse <dwmw2@infradead.org>
fs/jffs2/erase.c

index 66e7c2f..bdab9bc 100644 (file)
@@ -142,7 +142,7 @@ void jffs2_erase_pending_blocks(struct jffs2_sb_info *c, int count)
                }
 
                /* Be nice */
-               cond_resched();
+               yield();
                spin_lock(&c->erase_completion_lock);
        }