PPC 440 / JFFS2 checksum question.

Andrew McCarthy andrew at thediligent.com
Thu Oct 20 03:36:24 EST 2005


We have some PPC440GX based blade servers that boot
from flash. My boss wants me to add
additional checksums somewhere in the JFFS2 partitions
as an overall check of the JFFS2 filesystem images that
we burn to flash. Once the image is burned, that file
system is never written to again. (That's the theory anyway).
So every time they boot they want to read these checksum
out of the flash and use it to decide if they want to/can boot
with that filesystem or fallback to another one.
 Each copy of the kernel has its own JFFS2 partition.
The root file system has its own JFFS2 partition. I don't
understand why they don't just write everything to one
JFFS2 partition. They say it is because they are
worried about power failure while writing to the flash and want
to isolate any write failures.
( I tried to tell them that the journaling already handles
that case quite well - but they are non-believers)
 Some questions;
 1) Is a filesystem-wide checksum really necessary or
is it kind of silly?
 1.1) Doesn't JFFS2 already do some integrity checking after
it finishes writing a file? Are there checksums or anything that
serves the same function? They want to avoid having to
checksum the entire filesystem at boot time (due to quick
boot time requirements) - is there some field or fields, or technique that
can quickly tell me if the filesystem is ok?
 2) Is there any place within the bounds of a JFFS2
partition that is safe from being overwritten? before and
after checksums could be placed there.
 2.1) Is there any way to create such a place? for example,
by appending the checksums to the end of some filesystem-wide
structure like a super block? Or maybe it can be hidden in
a couple of inodes that are never overwritten.
 What I'm looking for regarding this adding extra checksums into the
JFFS2 image is:
 3.1) How can it be done?
3.2) Why might it be unnecessary or even inadvisable?
3.3) Why can't it be done?
 Once I understand the answers to these questions I can
go back and see what they want to do.
 In the meantime, I am dumping and analyzing the JFFS2
filesystems we have and reading the code trying to find the
answers.
 thanks for your time.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://ozlabs.org/pipermail/linuxppc-embedded/attachments/20051019/8515b9ab/attachment.htm 


More information about the Linuxppc-embedded mailing list