jffs2: Stop triggering block erases from jffs2_write_super()
This is the culmination of this sequence of patches. By moving the block erasing from jffs2_write_super() into the GC code, we avoid huge latencies on unmount where it waits for _all_ pending blocks to be erased, and we allow better control for time-critical tasks by stopping the GC thread. Signed-off-by: Joakim Tjernlund <joakim.tjernlund@transmode.se> Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
This commit is contained in:
parent
64a5c2eb82
commit
9723152ad1
1 changed files with 0 additions and 4 deletions
|
@ -63,10 +63,6 @@ static void jffs2_write_super(struct super_block *sb)
|
||||||
|
|
||||||
if (!(sb->s_flags & MS_RDONLY)) {
|
if (!(sb->s_flags & MS_RDONLY)) {
|
||||||
D1(printk(KERN_DEBUG "jffs2_write_super()\n"));
|
D1(printk(KERN_DEBUG "jffs2_write_super()\n"));
|
||||||
spin_lock(&c->erase_completion_lock);
|
|
||||||
jffs2_garbage_collect_trigger(c);
|
|
||||||
spin_unlock(&c->erase_completion_lock);
|
|
||||||
jffs2_erase_pending_blocks(c, 0);
|
|
||||||
jffs2_flush_wbuf_gc(c, 0);
|
jffs2_flush_wbuf_gc(c, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue