Question about power fail during file upgrade

Piotr Trojanek ptroja at elproma.com.pl
Mon Sep 30 04:02:33 EDT 2002


On Thu, Sep 26, 2002 at 09:45:23AM +0100, David Woodhouse wrote:
> 
> Kschoo70C at netscape.net said:
> >     I need some help to understand how the JFFS2 works. If I have a
> > version 1 of software component A on JFFS2, what happen if power
> > failed while I am in the middle of upgrading the component A to
> > version 2 ? The question is do I have version 1 intact or a
> > combination of version 1 and 2 ?
> 
> > Does the JFFS2 filesystem only set the inodes of a file to be valid
> > only after a complete file is written to the flash ? Does the old file
> > will only be deleted only after the new file is verified to be valid ?
> 
> JFFS2 knows nothing of 'complete files'. You are guaranteed atomicity of 
> individual file system operations only, according to POSIX. 
> 
> As with other file systems, you can write the new version of the file, then
> rename it over the top of the original. That will be atomic.
> 
> There's been talk about extending JFFS2 to allow userspace 'transactions' 
> but it's not been done.

so the only atomic change, that is guaranteed to work is renaming
new.file -> old.file?

if I need to make upgrade which depends on 10 files what should I do?
how about put all filesystem in one .tar and put it in ramdisk at system
startup, then make upgrade of .tar file, which is on JFFS2 DOC and
reboot? will it work?

-- 
Piotr Trojanek




More information about the linux-mtd mailing list