Hi all, I have a file > 2GB, and my job is seeking the file to pos: 2.1G. But, it seems that the lseek64 doesn't work. Here is the sample code: #define _LARGEFILE64_SOURCE #include ... int main() { int fd = -1; long long pos = (long long) 2*1024*1024*1024 + 10; // over 2G fd = open(FILENAME, O_WRONLY|O_LARGEFILE); if (fd < 0){ ... } if (lseek64(fd, pos, SEEK_SET) < 0) { fprintf(stderr, "Failed seeking to %lld, %s\n", pos, strerror(errno)); } return 0; } Then the building cmd: gcc -o test test.c -D_FILE_OFFSET_BITS=64 Output: Failed seeking to 2147483658, Success. The return val of lseek64 was "<0", but the strerror told me "Success". -- To unsubscribe from this list: send the line "unsubscribe linux-c-programming" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html