[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

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.

I'm using 
	- 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
http://lists.debian.org/cdwrite/2010/01/msg00072.html
"..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... "
http://git.kernel.org/?p=linux/kernel/git/stable/linux-2.6-stable.git;a=commit;h=fb50ae7446abb35184be029c51f825e45a4e0670
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
http://git.kernel.org/?p=linux/kernel/git/stable/linux-2.6-stable.git;a=history;f=fs/isofs/inode.c;h=6b4dcd4f2943e632c9d89115a2395084be95adc5;hb=HEAD

===

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
md5sum /mnt/cdrom/filetest
md5sum filetest
(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.


Thanks.
-- 
giulioo@pobox.com


Reply to: