4 * On 32-bit platforms, we need to use the _llseek() system call
5 * rather than lseek(), to be able to handle large disks. _llseek()
6 * isn't just a normal syscall which takes a 64-bit argument; it needs
7 * to return a 64-bit value and so takes an extra pointer.
11 #include <sys/syscall.h>
16 extern int __llseek(int fd, unsigned long hi, unsigned long lo, off_t *res, int whence);
18 off_t lseek(int fd, off_t offset, int whence)
23 rv = __llseek(fd, (unsigned long)(offset >> 32), (unsigned long)offset,
26 return rv ? (off_t)-1 : result;