# HG changeset patch # User jlarmour # Date 1083222970 0 # Node ID d04fae1f5cdef548a7d3d5bf93029c46c30fe62f # Parent 2aabaeffc1611295d7d830c2e7ba5365f7a4a6f1 * src/build.c: JFFS2 can now be used as a write-once, read many mode for really small flash disks, e.g. configuration parameters. diff --git a/packages/fs/jffs2/current/ChangeLog b/packages/fs/jffs2/current/ChangeLog --- a/packages/fs/jffs2/current/ChangeLog +++ b/packages/fs/jffs2/current/ChangeLog @@ -1,3 +1,8 @@ +2004-04-19 Oyvind Harboe + + * src/build.c: JFFS2 can now be used as a write-once, read many mode + for really small flash disks, e.g. configuration parameters. + 2004-04-21 Gary Thomas * src/fs-ecos.c: Merge from public MTD - verify file position diff --git a/packages/fs/jffs2/current/src/build.c b/packages/fs/jffs2/current/src/build.c --- a/packages/fs/jffs2/current/src/build.c +++ b/packages/fs/jffs2/current/src/build.c @@ -259,6 +259,14 @@ static void jffs2_calc_trigger_levels(st c->resv_blocks_write = c->resv_blocks_deletion + (size / c->sector_size); + // If the flash disk is smaller than resv_blocks_write, then we + // allow writing to the disk anyway. The flash disk is then most likely + // being used as write once - read many medimum, e.g. configuration of + // static paramters. + if (c->resv_blocks_write * c->sector_size > c->flash_size) { + c->resv_blocks_write = 0; + } + /* When do we let the GC thread run in the background */ c->resv_blocks_gctrigger = c->resv_blocks_write + 1;