diff options
Diffstat (limited to 'vendor/golang.org/x/sys/unix/syscall_linux_arm.go')
-rw-r--r-- | vendor/golang.org/x/sys/unix/syscall_linux_arm.go | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/vendor/golang.org/x/sys/unix/syscall_linux_arm.go b/vendor/golang.org/x/sys/unix/syscall_linux_arm.go index 3ec7a93..3a3c37b 100644 --- a/vendor/golang.org/x/sys/unix/syscall_linux_arm.go +++ b/vendor/golang.org/x/sys/unix/syscall_linux_arm.go | |||
@@ -19,12 +19,18 @@ func setTimeval(sec, usec int64) Timeval { | |||
19 | return Timeval{Sec: int32(sec), Usec: int32(usec)} | 19 | return Timeval{Sec: int32(sec), Usec: int32(usec)} |
20 | } | 20 | } |
21 | 21 | ||
22 | //sysnb pipe(p *[2]_C_int) (err error) | ||
23 | |||
22 | func Pipe(p []int) (err error) { | 24 | func Pipe(p []int) (err error) { |
23 | if len(p) != 2 { | 25 | if len(p) != 2 { |
24 | return EINVAL | 26 | return EINVAL |
25 | } | 27 | } |
26 | var pp [2]_C_int | 28 | var pp [2]_C_int |
29 | // Try pipe2 first for Android O, then try pipe for kernel 2.6.23. | ||
27 | err = pipe2(&pp, 0) | 30 | err = pipe2(&pp, 0) |
31 | if err == ENOSYS { | ||
32 | err = pipe(&pp) | ||
33 | } | ||
28 | p[0] = int(pp[0]) | 34 | p[0] = int(pp[0]) |
29 | p[1] = int(pp[1]) | 35 | p[1] = int(pp[1]) |
30 | return | 36 | return |
@@ -89,6 +95,7 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) { | |||
89 | //sys Listen(s int, n int) (err error) | 95 | //sys Listen(s int, n int) (err error) |
90 | //sys Lstat(path string, stat *Stat_t) (err error) = SYS_LSTAT64 | 96 | //sys Lstat(path string, stat *Stat_t) (err error) = SYS_LSTAT64 |
91 | //sys Pause() (err error) | 97 | //sys Pause() (err error) |
98 | //sys Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) | ||
92 | //sys sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) = SYS_SENDFILE64 | 99 | //sys sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) = SYS_SENDFILE64 |
93 | //sys Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) = SYS__NEWSELECT | 100 | //sys Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) = SYS__NEWSELECT |
94 | //sys Setfsgid(gid int) (err error) = SYS_SETFSGID32 | 101 | //sys Setfsgid(gid int) (err error) = SYS_SETFSGID32 |
@@ -257,3 +264,11 @@ func Poll(fds []PollFd, timeout int) (n int, err error) { | |||
257 | } | 264 | } |
258 | return poll(&fds[0], len(fds), timeout) | 265 | return poll(&fds[0], len(fds), timeout) |
259 | } | 266 | } |
267 | |||
268 | //sys armSyncFileRange(fd int, flags int, off int64, n int64) (err error) = SYS_ARM_SYNC_FILE_RANGE | ||
269 | |||
270 | func SyncFileRange(fd int, off int64, n int64, flags int) error { | ||
271 | // The sync_file_range and arm_sync_file_range syscalls differ only in the | ||
272 | // order of their arguments. | ||
273 | return armSyncFileRange(fd, flags, off, n) | ||
274 | } | ||