The binary definitely can create & read files larger than 2GB on a
linux system.  It's the "p4d" binary from Perforce under emulation that
I'm having a problem with. The 64bit calls are in the compat layer
(/usr/src/sys/compat/linux/linux_file64.c)   ktrace shows calls to
fstat64(), but pread() segvs on p4d reading files larger than 2GB, and
pwrite() segvs on p4d writing files larger than 2GB. -Glenn

COMPAT_LINUX emulation of pread() and pwrite() system calls is limited to
32-bit file offsets.

However, Linux kernels eventually changed these system calls to use 64-bit
file offsets (without using a different system call number, unfortunately).

The COMPAT_LINUX code is in dire need of an upgrade to match more recent
linux kernels...

Miod

Reply via email to