Results of firmware JFFS2 memory reduction effort
wmb at firmworks.com
Sun May 20 04:19:30 EDT 2007
We had a couple of pathological JFFS2 images that were crashing the
firmware's JFFS2 driver by using too much RAM when mounting the image.
(One of them was crashing the Linux driver too until David Woodhouse
made some improvements).
I re-engineered the firmware JFFS2 RAM data structures for compactness,
with the following results:
RAM After Reduction
Well-behaved, from mkfs.jffs2
Pathological 1, has log file with >1 million small nodes (512 M NAND)
Pathological 2, many deleted files with small nodes (1 G NAND)
The new version is about 20% faster too, but the time is still mostly
dominated by scanning the NAND device.
The new driver will appear in Q2C13.
(Pathological 1 is the image that was crashing the Linux driver,
provided to me by David Woodhouse. It resulted from some network
testing that was dribbing data into a log file that eventually became
large. Pathological 2 is an image from Quanta that was causing problems
in manufacturing test. It resulted from repeated runs of "dbench"
during power-fail stress testing.)
More information about the Devel