aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFerenc Havasi <havasi@inf.u-szeged.hu>2005-09-16 08:58:20 -0400
committerThomas Gleixner <tglx@mtd.linutronix.de>2005-11-06 15:47:18 -0500
commit34c0e906718fa2f85b54b937f79bffdca48ee864 (patch)
treeff07b9203c8f149c1f69f0e6bc2e6cf15d56fa3d
parent962034f43937d02a1c18e802a6641aed0a266ac5 (diff)
[JFFS2] Account summary space in reserved_size.
Always keep valid data in reserved_size. It did not cause problems, but the reservation code was unoptimal when centralized summary was active or the size of the erase block was very small. Signed-off-by: Ferenc Havasi <havasi@inf.u-szeged.hu> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
-rw-r--r--fs/jffs2/nodemgmt.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/fs/jffs2/nodemgmt.c b/fs/jffs2/nodemgmt.c
index 208b2bdf01e5..2cf576ae1120 100644
--- a/fs/jffs2/nodemgmt.c
+++ b/fs/jffs2/nodemgmt.c
@@ -7,7 +7,7 @@
7 * 7 *
8 * For licensing information, see the file 'LICENCE' in this directory. 8 * For licensing information, see the file 'LICENCE' in this directory.
9 * 9 *
10 * $Id: nodemgmt.c,v 1.125 2005/09/07 08:34:54 havasi Exp $ 10 * $Id: nodemgmt.c,v 1.126 2005/09/16 12:58:17 havasi Exp $
11 * 11 *
12 */ 12 */
13 13
@@ -307,6 +307,8 @@ static int jffs2_do_reserve_space(struct jffs2_sb_info *c, uint32_t minsize, uin
307 307
308 jffs2_close_nextblock(c, jeb); 308 jffs2_close_nextblock(c, jeb);
309 jeb = NULL; 309 jeb = NULL;
310 /* keep always valid value in reserved_size */
311 reserved_size = PAD(sumsize + c->summary->sum_size + JFFS2_SUMMARY_FRAME_SIZE);
310 } 312 }
311 } else { 313 } else {
312 if (jeb && minsize > jeb->free_size) { 314 if (jeb && minsize > jeb->free_size) {