Re: Q: large files in iso9660 ?

From: P. Christeas
Date: Tue Feb 03 2004 - 16:12:53 EST


>
> The kernel (2.6 and 2.4) has the following code in isofs_read_inode():
>
> /*
> * The ISO-9660 filesystem only stores 32 bits for file size.
> * mkisofs handles files up to 2GB-2 = 2147483646 = 0x7FFFFFFE
> bytes * in size. This is according to the large file summit paper from
> 1996. * WARNING: ISO-9660 filesystems > 1 GB and even > 2 GB are fully *
> legal. Do not prevent to use DVD's schilling@xxxxxxxxxxxx */
> if ((inode->i_size < 0 || inode->i_size > 0x7FFFFFFE) &&
> sbi->s_cruft == 'n') {
> printk(KERN_WARNING "Warning: defective CD-ROM. "
> "Enabling \"cruft\" mount option.\n");
> sbi->s_cruft = 'y';
> }
>
> IOW: your kernel should have warned you about the defective CDROM and
> truncated filesizes to 16MB (which is what the "cruft" mount option
> does).
>
>
> Erik

Makes perfect sense.
However, this *does* enforce the limit on DVD files. If I try to disable this
code and make inode sizes uint32, can there be any other negative
implication? Of course, I am still limited to 3GB..
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/