diff options
author | Artem Bityutskiy <Artem.Bityutskiy@nokia.com> | 2008-12-22 04:09:04 -0500 |
---|---|---|
committer | Artem Bityutskiy <Artem.Bityutskiy@nokia.com> | 2008-12-23 05:24:05 -0500 |
commit | 650ed50f4298e76007070b7ab9d640dfe7228ab3 (patch) | |
tree | 3756cfa59d1ed5aab403e67529b6b65a14a9cc70 /fs/ubifs | |
parent | 4d61db4f87b527734ac0cc830dda8fcc4e2add2f (diff) |
UBIFS: re-calculate min_idx_size after the commit
When we commit, but before we try to write anything to the flash
media, @c->min_idx_size is inaccurate, because we do not re-calculate
it after the commit. Do not forget to do this.
Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
Diffstat (limited to 'fs/ubifs')
-rw-r--r-- | fs/ubifs/tnc_commit.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/fs/ubifs/tnc_commit.c b/fs/ubifs/tnc_commit.c index 3c0af452887b..fde8d127c768 100644 --- a/fs/ubifs/tnc_commit.c +++ b/fs/ubifs/tnc_commit.c | |||
@@ -802,8 +802,10 @@ int ubifs_tnc_start_commit(struct ubifs_info *c, struct ubifs_zbranch *zroot) | |||
802 | * budgeting subsystem to assume the index is already committed, | 802 | * budgeting subsystem to assume the index is already committed, |
803 | * even though it is not. | 803 | * even though it is not. |
804 | */ | 804 | */ |
805 | ubifs_assert(c->min_idx_lebs == ubifs_calc_min_idx_lebs(c)); | ||
805 | c->old_idx_sz = c->calc_idx_sz; | 806 | c->old_idx_sz = c->calc_idx_sz; |
806 | c->budg_uncommitted_idx = 0; | 807 | c->budg_uncommitted_idx = 0; |
808 | c->min_idx_lebs = ubifs_calc_min_idx_lebs(c); | ||
807 | spin_unlock(&c->space_lock); | 809 | spin_unlock(&c->space_lock); |
808 | mutex_unlock(&c->tnc_mutex); | 810 | mutex_unlock(&c->tnc_mutex); |
809 | 811 | ||