]>
Commit | Line | Data |
---|---|---|
b5aaf4cf AM |
1 | ripped from Debian |
2 | ||
3 | --- | |
4 | sysdeps/unix/sysv/linux/posix_fadvise.c | 13 +++++++++++++ | |
5 | 1 file changed, 13 insertions(+) | |
6 | ||
7 | --- a/sysdeps/unix/sysv/linux/posix_fadvise.c | |
8 | +++ b/sysdeps/unix/sysv/linux/posix_fadvise.c | |
9 | @@ -35,6 +35,19 @@ | |
10 | return INTERNAL_SYSCALL_ERRNO (ret, err); | |
11 | return 0; | |
12 | #else | |
13 | +# ifdef __NR_fadvise64_64 | |
14 | + INTERNAL_SYSCALL_DECL (err); | |
15 | + int ret = INTERNAL_SYSCALL (fadvise64_64, err, 6, fd, | |
16 | + __LONG_LONG_PAIR ((long) (offset >> 31), | |
17 | + (long) offset), | |
18 | + __LONG_LONG_PAIR ((long) (len >> 31), | |
19 | + (long) len), | |
20 | + advise); | |
21 | + if (INTERNAL_SYSCALL_ERROR_P (ret, err)) | |
22 | + return INTERNAL_SYSCALL_ERRNO (ret, err); | |
23 | + return 0; | |
24 | +# else | |
25 | return ENOSYS; | |
26 | +# endif | |
27 | #endif | |
28 | } |