Re: [PATCH] Endianness bugs in e2fsck
From: Theodore Tso <tytso@mit.edu>
Date: 2007-06-22 22:42:41
From: Theodore Tso <tytso@mit.edu>
Date: 2007-06-22 22:42:41
On Wed, Jun 20, 2007 at 03:03:08PM +0530, Kalpak Shah wrote:
In ext2fs_swap_inode_full() if to and from inodes are not the same (which is the case when called from e2fsck_get_next_inode_full), then e2fsck cannot recognize any in-inode EAs since the un-swabbed i_extra_isize was being used. So corrected that to use swabbed values all the time.
Actually, this is wrong. Remember, the swab functions are used to swap *from* and *to* host byte order and on-disk order. So yes, there was a bug in that we were also using the f->i_extra_size, but using t->i_extra_size is also going to be wrong in some cases. That's what the hostorder parameter to ext2fs_swap_inode_full() is for. - Ted