Linux, ISOFS, multi-extent files: what's the status?
I'd like to understand what are the pitfalls, if any, in using multi-extent
files, as enabled by mkisofs "--iso-level 3" option for files larger than
4GiB-2, on Linux.
- mkisofs 2.01.01a69
- kernel 2.6.18-164.9.1.el5 (RHEL5)
I had made some tests and it seemed to me the kernel I was using was OK.
However, yesterday I read Thomas Schmitt message
"..My 2.6.18 swallows the last few bytes if the file
size is not a multiple of 2048...."
So I looked the git history for isofs/inode.c.
Kernel 2.6.18 was released on 2006-09-20.
Then on 2009-09-27 this patch was applied
"[PATCH] I/O Error attempting to read last partial block of a file in an
ISO9660 file... "
which seems to have to do with multi-extent files.
This patch is not in the RHEL5 kernel, so it should still has this defect.
I don't see any other relevant patch in the inode.c history log
Still, this simple test shows the file is read back OK on RHEL5 2.6.18
kernel; the file is larger than 4GiB-2 and not multiple of 2048:
dd if=/dev/urandom of=filetest bs=1000000 count=4300
mkisofs -quiet --iso-level 3 -o test.iso filetest
sudo mount -o loop test.iso /mnt/cdrom
(the 2 md5sum come back the same)
How can I test multi-extent file hadling effectively?
I have to stay on RHEL5 kernel I cannot patch or upgrade the kernel.