files > 2GB

Khimenko Victor khim en sch57.msk.ru
Mar Ene 25 17:44:07 CST 2000


In <20000125124609.G948 en mff.cuni.cz> Jakub Jelinek (jakub en redhat.com) wrote:
>>  > And LOTS of testing :-) Of course just this. Reiser proposed to
>>  > support files over 2GiB in 2.3.x with upcoming version of
>>  > ReiserFS for 2.3.x ... When (and if) it'll be ready to actual
>>  > use is not clear though. Of course you'll need updated version
>>  > of glibc 2.1.x as well
>>
>> All very true...
>>
>>  > (BTW what should happen with "old" system calls when they are
>>  > used for big files?)...
>>
>> My suggestion would be to use the following rule set:

JJ> What are those rules for? There is a LFS standard (e.g. part of Unix98),
JJ> so you just compile your programs with -D_FILE_OFFSET_BITS=64 if you want
JJ> transparent 64bit access (off_t is a 64bit type in that case, open, lseek
JJ> and the like are redirected to open64, lseek64 etc.) or you can compile with
JJ> -D_LARGEFILE64_SOURCE so that you can choose between using
JJ> off_t/open/lseek/stat/etc. and off64_t/open64/lseek64/stat64/etc.
JJ> Several utilities in the Linux distributions already use
JJ> -D_FILE_OFFSET_BITS=64 (like fileutils, etc.), so if you just upgrade glibc
JJ> and kernel, ls and the like will work.
JJ> This is present in glibc for some time already, with the LFS interface in
JJ> the kernel those 64bit functions only call the LFS syscalls and not the old
JJ> ones. After a few missing things are finished in the kernel and in glibc,
JJ> we'll have a full LFS implementation (missing is e.g. 64bit file locking,
JJ> 64bit file size resource limits and a few other things).
JJ> But you can already play with 64bit files on 32bit hosts and it is
JJ> definitely not limited to ReiserFS as ext2 works just fine.

All is not that simple. How NOT RECOMPILED programs should deal with such
files ? cp, file, etc ? "Recompile all programs with -D_FILE_OFFSET_BITS=64"
is not good answer IMO: why we need new syscalls and so on if we can just
enlarge stuctures in existing ones and let everyone recompile the whole system ?




-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo en vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/



Más información sobre la lista de distribución Ayuda