On Mon, Mar 12, 2001 at 01:47:54PM -0700, Andreas Dilger wrote:
> Yes, I sent in a patch about this as well (don't think it is in kernel
> yet).  HOWEVER, there is also a bug related to this - for checking
> LARGEFILE, we only check raw_inode->i_size_high, and not bit 32 of
> inode->i_size.  This was also in my original patch.

> >             raw_inode->i_size_high = cpu_to_le32(inode->i_size >> 32);
> >             if (raw_inode->i_size_high) {
> > -                   struct super_block *sb = inode->i_sb;
> >                     if (!EXT2_HAS_RO_COMPAT_FEATURE(sb,
> >                                     EXT2_FEATURE_RO_COMPAT_LARGE_FILE) ||
> 
> This is where we need to check bit 32 for LFS:
> 
> -             if (raw_inode->i_size_high) {
> +             if (raw_inode->i_size_high || inode->i_size & 0x80000000) {

surely better to check

                if (inode->i_size >= 0x80000000)

after all, it's what you mean.
-
To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in
the body of a message to [EMAIL PROTECTED]

Reply via email to