aboutsummaryrefslogtreecommitdiff
path: root/src/syscall/syscall_linux_arm.go
diff options
context:
space:
mode:
Diffstat (limited to 'src/syscall/syscall_linux_arm.go')
-rw-r--r--src/syscall/syscall_linux_arm.go6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/syscall/syscall_linux_arm.go b/src/syscall/syscall_linux_arm.go
index 65543193e1..a7acd08033 100644
--- a/src/syscall/syscall_linux_arm.go
+++ b/src/syscall/syscall_linux_arm.go
@@ -19,12 +19,18 @@ func setTimeval(sec, usec int64) Timeval {
return Timeval{Sec: int32(sec), Usec: int32(usec)}
}
+//sysnb pipe(p *[2]_C_int) (err error)
+
func Pipe(p []int) (err error) {
if len(p) != 2 {
return EINVAL
}
var pp [2]_C_int
+ // Try pipe2 first for Android O, then try pipe for kernel 2.6.23.
err = pipe2(&pp, 0)
+ if err == ENOSYS {
+ err = pipe(&pp)
+ }
p[0] = int(pp[0])
p[1] = int(pp[1])
return