How to mount ISO-9660 multi-extents blu-ray disc

Conrad Meyer cem at freebsd.org
Fri Aug 17 17:01:48 UTC 2018


Thanks for the report.  It looks like classic 32-bit truncation is
happening somewhere on the file size:

$ printf "%x\n" 5368709120
140000000
$ printf "%x\n" 1073741824
40000000

This is at least in part due to the inode i_size being a (32-bit)
unsigned long.  i_size is initialized by isonum_733(isodir->size) in
cd9660_vget_internal(), which decodes a 32-bit little endian number.
So i_size needs to be expanded, and there may be additional logic
needed to enumerate size information for files larger than 4GB.

This is a deficiency in cd9660 that I don't believe can be addressed
with a mount time option, so if possible, please file a PR in bugzilla
to track this.

Thank you,
Conrad

On Fri, Aug 17, 2018 at 1:27 AM, Masachika ISHIZUKA
<ish at amail.plala.or.jp> wrote:
> Hi.
>
> I was written 5gb file on bru-ray disc by growisofs with linux.
> I want to mount it with freebsd, but only last extent of file is
> shown as follows.
>
> freebsd# mount -t cd9660 /dev/cd0 /cdrom
> freebsd# ls -l /cdrom/test/
> total 1048576
> -rw-r--r--  1 root  wheel  1073741824 Aug 17 16:58 test5g
>
> On the other hand, linux can handle multi-extents disc as follows.
>
> ubuntu# mount /dev/sr0 /cdrom
> ubuntu# ls -l /cdrom/test/
> total 5242880
> -r--r--r-- 1 nobody nogroup 5368709120 Aug 17 16:58 test5g
>
> How can I mount multi-extents disc with freebsd ?
> _______________________________________________
> freebsd-fs at freebsd.org mailing list
> https://lists.freebsd.org/mailman/listinfo/freebsd-fs
> To unsubscribe, send any mail to "freebsd-fs-unsubscribe at freebsd.org"


More information about the freebsd-fs mailing list