commit | d61c044b1678dd399c134e065f64eee6b231e119 | [log] [tgz] |
---|---|---|
author | Tobias Klauser <tklauser@distanz.ch> | Fri Sep 17 14:39:43 2021 +0200 |
committer | Tobias Klauser <tobias.klauser@gmail.com> | Fri Sep 17 16:11:53 2021 +0000 |
tree | b21d258751cb8d9a8966b9f54c5ec4cea5267e79 | |
parent | ed5796bab16455f104b6a384d51b7f9990cb9806 [diff] |
unix: implement Pipe using pipe2 syscall on all linux platforms Most architectures currently already implement Pipe using the pipe2 syscall. Only 386, amd64, mips{,le}, ppc and sparc64 still use the pipe syscall. However, some systems (e.g. Android seccomp policies) block that syscall, see golang/go#40828 for an example. The pipe2 syscall was added in Linux kernel version 2.6.27. The minimum required Linux kernel version for Go 1.18 will be changed to 2.6.32 per golang/go#45964 so it is possible to unify the implementation of Pipe using the pipe2 syscall. Same as CL 350530 did for package syscall. For golang/go#45964 Fixes golang/go#40828 Change-Id: I07d84d3ea06a54e37d9ff6b72702fe5d96efef7b Reviewed-on: https://go-review.googlesource.com/c/sys/+/350549 Trust: Tobias Klauser <tobias.klauser@gmail.com> Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com> TryBot-Result: Go Bot <gobot@golang.org> Reviewed-by: Matt Layher <mdlayher@gmail.com> Reviewed-by: Ian Lance Taylor <iant@golang.org>
This repository holds supplemental Go packages for low-level interactions with the operating system.
The easiest way to install is to run go get -u golang.org/x/sys
. You can also manually git clone the repository to $GOPATH/src/golang.org/x/sys
.
This repository uses Gerrit for code changes. To learn how to submit changes to this repository, see https://golang.org/doc/contribute.html.
The main issue tracker for the sys repository is located at https://github.com/golang/go/issues. Prefix your issue with “x/sys:” in the subject line, so it is easy to find.