jffs2: Wake GC thread when there are blocks to be erased
authorJoakim Tjernlund <joakim.tjernlund@transmode.se>
Wed, 19 May 2010 15:55:40 +0000 (16:55 +0100)
committerDavid Woodhouse <David.Woodhouse@intel.com>
Wed, 19 May 2010 15:55:40 +0000 (16:55 +0100)
Now that we trigger block erases from jffs2_garbage_collect_pass(),
adjust jffs2_thread_should_wake() to return 1 when there are blocks to
erase.

Signed-off-by: Joakim Tjernlund <joakim.tjernlund@transmode.se>
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
fs/jffs2/nodemgmt.c

index 08e2c69..5ab5c85 100644 (file)
@@ -744,6 +744,10 @@ int jffs2_thread_should_wake(struct jffs2_sb_info *c)
        int nr_very_dirty = 0;
        struct jffs2_eraseblock *jeb;
 
+       if (!list_empty(&c->erase_complete_list) ||
+           !list_empty(&c->erase_pending_list))
+               return 1;
+
        if (c->unchecked_size) {
                D1(printk(KERN_DEBUG "jffs2_thread_should_wake(): unchecked_size %d, checked_ino #%d\n",
                          c->unchecked_size, c->checked_ino));