Lost space on JFFS2 partition

John Hall
2003-08-28T09:59:59Z

Hi,

I have a 7MB NAND flash partition, on which I'm running JFFS2. This
partition contained about 3.5MB of files, yet df reported that the partition
was 96% full. I tried sending SIGHUP to the gc thread and unmounting and
remounting the device, but it had no effect. I then moved the files off the
partition and then copied them back, and the usage went down to just 31%,
which with compression is what one would expect.

I've got two ideas about what happened:

1. The files in question are log files and so there are lots of small writes
happening. How does JFFS2 compress files? Is it on a block basis or per
write? If it is the latter then I could imagine that compression is actually
having an adverse effect when a file is created from a large number of small
writes.

2. A bug in JFFS2 was causing some unused space not to be garbage collected.
The version of JFFS2 being used is 9 months old, so perhaps I should merge a
later version in anyway.

My knowledge of how JFFS2 works internally is limited, so I would be
grateful for any advice.

Regards,
John Hall