[Debburn-devel] Possible bug in 4GiB filesize check

Thomas Schmitt scdbackup at gmx.net
Thu Jun 13 12:38:27 UTC 2013


Hi,

> I just want to be able
> to pass it around for Linux distros without additional packages.

I cannot exactly state when Linux aquired the capability to
correctly represent multi-extent files (i.e. >= 4 GiB).
My old 2.6 system does it.

> And I think most 32-bit Linux filesystems these days are
> using either 64-bit longs for off_t or at least getting to
> 4GiB-1 by making them unsigned, as ISO9660 does.

off_t is always signed because some system calls can take
negative values.

On the other hand stat(2) is not free to deviate from the
definition
          struct stat {
              ...
              off_t     st_size;    /* total size, in bytes */
              ...
          }

So either off_t is 64-bit (possible already with kernel 2.4)
or it is restricted to 2 GiB - 1.


> > :-[ CLOSE SESSION failed with SK=5h/INVALID FIELD IN CDB]: Input/output
> > :error

> I haven't gotten that far yet :-)  genisoimage is erroring out before it
> touches the disk 

It is pity that this bug does not get fixed. Andy Polyakov
(author of growisofs) stated it was harmless. But there are
indications that it is not.

Maybe growisofs option
  -use-the-force-luke=spare:none
can avoid the error occasion too. This could skip formatting
and disable use of pseudo overwriting.

My libburn is using a different state with formatted BD-R and
does not get near to the error occasion.
With unformatted BD-R it is supposed to do the same things
as growisofs (if you can keep growisofs from formatting, that is).


Have a nice day :)

Thomas




More information about the Debburn-devel mailing list