Re: ext2 file system: moving between armel and amd64 etc.
On Mon, Oct 26, 2009 at 11:36:56PM +0800, Martin Michlmayr wrote:
> * Riku Voipio <riku.voipio@iki.fi> [2009-10-26 16:07]:
> > > ext2 created by Debian lenny on amd64:
> > > Filesystem flags: signed_directory_hash
> > >
> > > ext2 created by Ubuntu 09.4 armel:
> > > Filesystem flags: unsigned_directory_hash
> > >
> > > It seems it comes from the fact that armel uses unsigned for char.
> >
> > Ted, can you check if e2fsprogs expects signed char in the code that
> > checks for signed directory hash?
>
> FWIW, such a problem was discussed on this list last year and resulted
> in a kernel fix for ext3 and ext4, see
> http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=5e1f8c9e20a92743eefc9a82c2db835213905e26
> The ext3 fix is in the lenny kernel.
Yes.
> I don't think I ever saw a fix for ext2.
I see fs/ext3/hash.c but do not see fs/ext2/hash.c in kernel.
Let me be specific. Let me not make judgement if I have ext2 or ext3
without journaling.
I made filesystem using mkfs.ext2. This is fact.
I did not experience any problem by moving microSD card between armel
and amd64 if I mount it to running system.
But if this microSD card contains bootable system image and I try to
boot it, it haults its booting at /etc/rcS.d/S20checkroot.sh makes fsck
(This boot image was Ubuntu based).
By running "fsck.ext2 -p" from armel system on this microSD card before
booting from it, it became bootable but it kept "signed" flag just like
on amd64. Since this is now unsigned as I assumed, I wanted to change
this flag with some utility to match what the filesystem is like.
Osamu
Reply to: