Hello,
while looking at the COMPAT flag patches I made, I noticed the following
in the ext2/ext3 code. I believe that this bug is fixed in 2.4, but it
also needs to be fixed in 2.2. Basically, we are checking for an ext2
large file, which would be a file > 2GB on systems that don't support
such. However, we are checking for a file > 8GB which is clearly wrong.
The ext3 version of the patch is also attached.
Cheers, Andreas
==========================================================================
--- linux-2.2.18pre27-TL/fs/ext2/file.c.orig Mon Dec 11 22:43:17 2000
+++ linux-2.2.18pre27-TL/fs/ext2/file.c Wed Dec 13 00:13:00 2000
@@ -208,7 +208,7 @@
if (!count)
return -EFBIG;
}
- if (((pos + count) >> 31) &&
+ if (((pos + count) >> 33) &&
!(sb->u.ext2_sb.s_es->s_feature_ro_compat &
cpu_to_le32(EXT2_FEATURE_RO_COMPAT_LARGE_FILE))) {
/* If this is the first large file created, add a flag
--- linux-2.2.18pre27-TL/fs/ext3/file.c.orig Mon Dec 11 22:43:17 2000
+++ linux-2.2.18pre27-TL/fs/ext3/file.c Wed Dec 13 00:13:00 2000
@@ -208,7 +208,7 @@
if (!count)
return -EFBIG;
}
- if (((pos + count) >> 31) &&
+ if (((pos + count) >> 33) &&
!EXT3_HAS_RO_COMPAT_FEATURE(sb,
EXT3_FEATURE_RO_COMPAT_LARGE_FILE)) {
/* If this is the first large file created, add a flag
-- Andreas Dilger \ "If a man ate a pound of pasta and a pound of antipasto, \ would they cancel out, leaving him still hungry?" http://www-mddsp.enel.ucalgary.ca/People/adilger/ -- Dogbert - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org Please read the FAQ at http://www.tux.org/lkml/
This archive was generated by hypermail 2b29 : Fri Dec 15 2000 - 21:00:26 EST