On Wed, Nov 07, 2007 at 05:09:39PM +0100, Jan Kara wrote:
> Subject: Support for 64KB blocksize in ext2-4 directories.
>
> When block size is 64KB, we have to take care that rec_len does not overflow.
> Kernel stores 0xffff in case 0x10000 should be stored - perform appropriate
> conversion when reading from / writing to disk.
NACK. You can't do the conversion in the reader/writer routines
because the fundamentally rec_len is only a 16 bit field. So when you
read a directory block where the rec_len field is encoded as 0xFFFF,
and you translate it to 0x10000, when you assign it to
dirent->rec_len, the 0x10000 gets chopped off and rec_len gets a value
of zero. Did you test this patch before submitting it?
The only way to do this is to find all of the places that reference
rec_len, and do the check there.
- Ted
-
To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at http://vger.kernel.org/majordomo-info.html