diff options
author | David Woodhouse <David.Woodhouse@intel.com> | 2010-05-19 17:00:10 +0100 |
---|---|---|
committer | David Woodhouse <David.Woodhouse@intel.com> | 2010-05-19 17:10:22 +0100 |
commit | acb64a43e4503fbea9faf123f2403da7af8831eb (patch) | |
tree | 862d5ad6530b7c8671bda96a1bd1d07179f0b7c9 /fs/jffs2/nodemgmt.c | |
parent | d6ce171069635f05737935adc813b4d48d71a583 (diff) | |
download | op-kernel-dev-acb64a43e4503fbea9faf123f2403da7af8831eb.zip op-kernel-dev-acb64a43e4503fbea9faf123f2403da7af8831eb.tar.gz |
jffs2: Require jffs2_garbage_collect_trigger() to be called with lock held
We're about to call this from a bunch of places which already hold
c->erase_completion_lock, so add an assertion and change its existing
callers to do the same.
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
Diffstat (limited to 'fs/jffs2/nodemgmt.c')
-rw-r--r-- | fs/jffs2/nodemgmt.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/fs/jffs2/nodemgmt.c b/fs/jffs2/nodemgmt.c index 5ab5c85..dd2d920 100644 --- a/fs/jffs2/nodemgmt.c +++ b/fs/jffs2/nodemgmt.c @@ -481,7 +481,9 @@ struct jffs2_raw_node_ref *jffs2_add_physical_node_ref(struct jffs2_sb_info *c, void jffs2_complete_reservation(struct jffs2_sb_info *c) { D1(printk(KERN_DEBUG "jffs2_complete_reservation()\n")); + spin_lock(&c->erase_completion_lock); jffs2_garbage_collect_trigger(c); + spin_unlock(&c->erase_completion_lock); mutex_unlock(&c->alloc_sem); } |