--- /dev/null
+--- linux-2.6.4-rc2/fs/isofs/inode.c.orig 2004-03-04 07:17:05.000000000 +0100
++++ linux-2.6.4-rc2/fs/isofs/inode.c 2004-05-28 16:57:29.000000000 +0200
+@@ -1264,7 +1264,7 @@
+ if(isofs_read_level3_size(inode)) goto fail;
+ } else {
+ ei->i_next_section_ino = 0;
+- inode->i_size = isonum_733 (de->size);
++ inode->i_size = (unsigned)isonum_733 (de->size);
+ }
+
+ /*
+@@ -1274,7 +1274,8 @@
+ * WARNING: ISO-9660 filesystems > 1 GB and even > 2 GB are fully
+ * legal. Do not prevent to use DVD's schilling@fokus.gmd.de
+ */
+- if ((inode->i_size < 0 || inode->i_size > 0x7FFFFFFE) &&
++ /* recent mkisofs allows files up to 4GB, so use 0xFFFFFFFE */
++ if ((inode->i_size < 0 || inode->i_size > 0xFFFFFFFEU) &&
+ sbi->s_cruft == 'n') {
+ printk(KERN_WARNING "Warning: defective CD-ROM. "
+ "Enabling \"cruft\" mount option.\n");