Tobias Klauser
2f3576d2c5
cpu: add basic support for GOARCH=riscv64
...
Updates golang/go#27532
Change-Id: I7250f272ff46f2765d498a97644fb570ae745a6c
Reviewed-on: https://go-review.googlesource.com/c/sys/+/206860
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org >
2019-11-13 15:47:02 +00:00
Tobias Klauser
e43da5d1f2
cpu: move empty doinit to own file
...
Avoids each GOARCH having to define an empty doinit for GOOS=linux
Change-Id: Ic7cea1be4a35c31593c4f867478194b82dd53613
Reviewed-on: https://go-review.googlesource.com/c/sys/+/206859
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org >
2019-11-13 15:46:56 +00:00
Tobias Klauser
8ad3422571
unix: skip TestPselect on EINTR
...
Some slow builders occassionally seem to fail with:
syscall_linux_test.go:301: Pselect: interrupted system call
Just skip the test in these cases for now.
Fixes golang/go#35555
Change-Id: I8850634fc4000bf9d0d6cce27834febc53d3fcd6
Reviewed-on: https://go-review.googlesource.com/c/sys/+/206862
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org >
2019-11-13 15:03:13 +00:00
Tobias Klauser
59a1497f0c
unix: test returned fd in TestEpoll
...
Check the fd returned in EpollEvent to detect potential padding issues.
Also, fail the test if the number of events mismatches.
Updates golang/go#35479
Change-Id: I39f856ca2c336e849876a33acffb70b82aa83c3f
Reviewed-on: https://go-review.googlesource.com/c/sys/+/206858
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org >
TryBot-Result: Gobot Gobot <gobot@golang.org >
2019-11-12 21:41:54 +00:00
Tobias Klauser
d32e6e3b99
windows: add empty.s to fix build with Go 1.11 and earlier
...
CL 199519 broke the build with Go 1.11. Even though this is not an
officially supported release anymore, people still seem to rely on it
and the fix is easy enough and won't break anyone using newer, supported
Go versions.
Change-Id: I632d6840bc1f49c01c372727c9a55d2daf98f4a8
Reviewed-on: https://go-review.googlesource.com/c/sys/+/206357
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org >
2019-11-10 16:31:57 +00:00
Tobias Klauser
c1f44814a5
unix: add TestEpoll on linux
...
This tests the epoll functionality on linux and should hopefully help
catch GOARCHes where additional padding of EpollEvent is needed (see
e.g. CL 189877).
Change-Id: Icd19746a60a63016a5d46535a2cc557ca7a0d474
Reviewed-on: https://go-review.googlesource.com/c/sys/+/205398
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
2019-11-05 23:10:09 +00:00
Tobias Klauser
ac3223d801
unix: add methods to manipulate *FdSet
...
Add Set, Clear, IsSet and Zero methods to manipulate an *FdSet. These
implement the same functionality as the FD_SET, FD_CLR, FD_ISSET and
FD_ZERO macros in <sys/select.h>.
Change-Id: I6b7bccb98e58ee5e719096ed5743f6edcd232840
Reviewed-on: https://go-review.googlesource.com/c/sys/+/205397
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
2019-11-05 14:28:33 +00:00
Tobias Klauser
e8c54fb511
windows: add EnumProcesses function
...
See https://docs.microsoft.com/en-us/windows/win32/api/psapi/nf-psapi-enumprocesses
Change-Id: Ibccb0c3d8e4f32857547ee6d072d0b1cb2430366
Reviewed-on: https://go-review.googlesource.com/c/sys/+/205197
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Alex Brainman <alex.brainman@gmail.com >
2019-11-04 09:48:58 +00:00
Tobias Klauser
33540a1f60
unix: don't use non-existing uint128 type on freebsd/arm64
...
CL 179099 introduced type FpReg on freebsd, on freebsd/arm64 using a
type uint128. This type doesn't exist in Go.
Change-Id: Ie7f065f38f2cc2c163abdfa7dddad886b8edbe3b
Reviewed-on: https://go-review.googlesource.com/c/sys/+/203419
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org >
2019-10-26 07:03:38 +00:00
Tobias Klauser
6c3a3bfe00
unix: make convertFromDirents11 checkptr safe
...
Follow CL 202878 which did the same for package syscall.
Updates golang/go#35092
Change-Id: Id53d2cde0333581c98d13b096a48f2a602b2425f
Reviewed-on: https://go-review.googlesource.com/c/sys/+/202959
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Cuong Manh Le <cuong.manhle.vn@gmail.com >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
2019-10-25 02:14:31 +00:00
Tobias Klauser
e66fe6eb8e
unix: regenerate darwin libc trampolines after CL 202837
...
CL 202837 forgot to properly re-generate
zsyscall_darwin_{386,amd64,arm64}.s with the correct trampoline name.
Updates golang/go#35103
Updates golang/go#34133
Updates golang/go#35101
Change-Id: I98805988f97c7ff51da858fdc36c436aa680c8c7
Reviewed-on: https://go-review.googlesource.com/c/sys/+/202958
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Jason A. Donenfeld <Jason@zx2c4.com >
2019-10-24 07:30:52 +00:00
Tobias Klauser
3e7259c5e7
unix: don't use 32-bit aligned access for cmsgAlignOf on dragonfly after ABI change
...
Use 32-bit alignment for versions before the September 2019 ABI changes
http://lists.dragonflybsd.org/pipermail/users/2019-September/358280.html
Follows CL 201977 which did the same for package syscall.
Updates golang/go#34958
Change-Id: I0e13fccf6563e4d34dd4aa7410be044881f220aa
Reviewed-on: https://go-review.googlesource.com/c/sys/+/202179
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
2019-10-20 21:24:54 +00:00
Tobias Klauser
9984515f05
windows, unix: fix wrong unsafe.Pointer alignment in syscall
...
Same as CL 201877 did for package syscall.
Updates golang/go#34972
Change-Id: I3929841ab32378516edafb1f02a84b1bdcc77bbd
Reviewed-on: https://go-review.googlesource.com/c/sys/+/202177
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org >
2019-10-20 15:20:52 +00:00
Tobias Klauser
727590c500
unix: avoid "just past the end" pointers in UnixRights
...
Same as CL 201617 did for package syscall.
Caught with -d=checkptr
Updates golang/go#22218
Change-Id: I8208f8e6d9bd62376bf9e0458dc18956daabd785
Reviewed-on: https://go-review.googlesource.com/c/sys/+/201937
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Elias Naur <mail@eliasnaur.com >
2019-10-18 09:52:05 +00:00
Tobias Klauser
3421d5a6bb
unix: avoid __getdirentries64 on darwin
...
Getdirentries is implemented with the __getdirentries64 function
in libSystem.dylib on darwin/{386,amd64}. That function can't be used in
an app store application.
Implement Getdirentries using the underlying
fdopendir/readdir_r/closedir for Go 1.13. The simulation isn't faithful,
and could be slow, but it should handle common cases.
For Go 1.12, fall back to raw syscalls since syscall.syscallPtr needed
to use fdopendir from libSystem.dylib is not available.
Follow CL 168479 and CL 170892 which did the same for syscall in the
stdlib.
Tested on darwin/amd64 with Go 1.11, Go 1.12 and Go 1.13
Fixes golang/go#34400
Change-Id: I631382aaea9ee7e0c4ed09e06ad5427efc620769
Reviewed-on: https://go-review.googlesource.com/c/sys/+/196478
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Keith Randall <khr@golang.org >
2019-10-02 06:39:06 +00:00
Tobias Klauser
34b0ac8f0d
unix: update openbsd/{386,amd64.arm} MAP_* consts
...
Update the MAP_* consts for openbsd/{386,amd64.arm} on OpenBSD 6.5.
openbsd/arm64 was already generated on OpenBSD 6.5 for CL 173678.
Fixes golang/go#34589
Change-Id: Ie06bdc28ddd39a8c8e4f61137cb060f74c59e1eb
Reviewed-on: https://go-review.googlesource.com/c/sys/+/198157
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org >
Reviewed-by: Benny Siegert <bsiegert@gmail.com >
2019-10-02 06:38:49 +00:00
Tobias Klauser
2837fb4f24
unix: add NFDBITS const on Linux, update TestSelect
...
Adjust TestSelect on Linux to match the Darwin/*BSD changes in CL
196802.
Updates golang/go#34458
Change-Id: Ia17fdadf7091001ea785391da23aaf9d3ec4ac5e
Reviewed-on: https://go-review.googlesource.com/c/sys/+/196806
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org >
2019-09-24 15:45:21 +00:00
Tobias Klauser
e2fefa8ec2
unix: fix Select to return number of ready fds on Solaris
...
Make Select's signature on Solaris match the one on Linux and return the number
of ready file descriptors.
Updates golang/go#34458
Change-Id: I118c4c35cbc83dba015ef357ce9bef44c9165ec1
Reviewed-on: https://go-review.googlesource.com/c/sys/+/196807
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org >
2019-09-24 15:45:09 +00:00
Tobias Klauser
2f72d4f062
unix: re-generate Select on dragonfly
...
CL 196802 did not properly re-generate the definition of Select after
changing the //sys comment.
Updates golang/go#34458
Change-Id: I035468487163f48393fc777dde691737fce41aa8
Reviewed-on: https://go-review.googlesource.com/c/sys/+/196805
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org >
2019-09-24 13:54:25 +00:00
Tobias Klauser
2aa67d56cd
unix: fix Select to return number of ready fds on Darwin and *BSD
...
Make Select's signature on Darwin and the BSDs match the one on Linux
and return the number of ready file descriptors.
Fixes golang/go#34458
Change-Id: Ia618ce34ff754f2b731d7f913cab840d7948579c
Reviewed-on: https://go-review.googlesource.com/c/sys/+/196802
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org >
2019-09-24 06:27:00 +00:00
Tobias Klauser
1a3b71a79e
unix: update Dockerfile to Linux 5.3 and use ubuntu 19.04 base image
...
rsync needs to be explicitly installed for 'make headers_install' to
work.
Change-Id: Icd3d6b3f004a7684b5ae32b4b7cab8d50631900d
Reviewed-on: https://go-review.googlesource.com/c/sys/+/195258
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Matt Layher <mdlayher@gmail.com >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
2019-09-16 14:18:54 +00:00
Tobias Klauser
c3b328c6e5
unix: add IfaCacheinfo on linux
...
Change-Id: Ifda2eed10f75eeddff7720676fd0a5feee78a7a5
Reviewed-on: https://go-review.googlesource.com/c/sys/+/195257
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
Reviewed-by: Matt Layher <mdlayher@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
2019-09-13 12:16:21 +00:00
Tobias Klauser
bc967efca4
unix: sort Linux-specific includes in linux/types.go and mkerrors.sh
...
Keep the list of includes sorted, so that it's clear where to add new
entries and to avoid duplicates being added.
Change-Id: I67bd8b5a4e4b40affcad636dccfceef2460158b1
Reviewed-on: https://go-review.googlesource.com/c/sys/+/195017
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Matt Layher <mdlayher@gmail.com >
2019-09-12 14:19:32 +00:00
Tobias Klauser
bbd175535a
unix: add Msghdr.SetIovlen for solaris/amd64
...
Follow-up for CL 194077
Updates golang/go#34164
Change-Id: I4bf670dc3e13c483e9087dc3f04973278a09b2f4
Reviewed-on: https://go-review.googlesource.com/c/sys/+/194099
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Matt Layher <mdlayher@gmail.com >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
2019-09-10 06:45:55 +00:00
Tobias Klauser
749cb33bea
cpu: add a space before build tag comment
...
Add a space before build tag comments so it corresponds to the format
documented at https://golang.org/pkg/go/build/ .
Change-Id: Ia7c724daf70d419dec52a652188799441053a867
Reviewed-on: https://go-review.googlesource.com/c/sys/+/193198
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org >
2019-09-04 15:47:56 +00:00
Tobias Klauser
5fe476d890
unix: use bits.OnesCount64 instead of local copy
...
The local copy of bits.OnesCount64 was added for compatibility with Go
1.8 and earlier in CL 86477. Go 1.8 is no longer supported and go.mod
requires Go 1.12, so drop the local copy and use bits.OnesCount64.
Change-Id: Ieb77f0cef5f8f206b74ca737449efdcfe1949d44
Reviewed-on: https://go-review.googlesource.com/c/sys/+/192357
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Daniel Martí <mvdan@mvdan.cc >
2019-08-29 20:48:30 +00:00
Tobias Klauser
fde4db37ae
unix/linux: update Dockerfile to glibc 2.30
...
Change-Id: I4fd358388c46b4c2e8a4081640315db2313e585f
Reviewed-on: https://go-review.googlesource.com/c/sys/+/189438
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Matt Layher <mdlayher@gmail.com >
2019-08-13 06:44:41 +00:00
Tobias Klauser
fae7ac547c
unix: add constants and types to work with Linux loop devices
...
Change-Id: I0996df39a561b50822a6e42e770d96421d6b4965
Reviewed-on: https://go-review.googlesource.com/c/sys/+/185498
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
2019-07-12 06:29:09 +00:00
Tobias Klauser
6ec70d6a55
unix: update Dockerfile to Linux 5.2 and Go 1.13beta1
...
Change-Id: I1a63f6ae5fe6b8b6fb4f493837b12dbe3c2860d4
Reviewed-on: https://go-review.googlesource.com/c/sys/+/185497
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
2019-07-10 14:34:15 +00:00
Tobias Klauser
04f50cda93
unix: add missing dirent* helper functions on aix
...
These are needed by ParseDirent and were missing in CL 183897.
Change-Id: I5b340fea9c0dc1b65b717b0d3cfd8cbb40d3cae9
Reviewed-on: https://go-review.googlesource.com/c/sys/+/183997
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
2019-06-26 22:19:50 +00:00
Tobias Klauser
e07cf5db27
unix: don't use syscall.ParseDirent
...
Implement ParseDirent in x/sys/unix instead of calling
syscall.ParseDirent. The latter uses offsets into syscall.Dirent which
might not be matching unix.Dirent depending on Go version. This is e.g.
the case with of FreeBSD whose Dirent structure was updated for Go 1.12.
This fixes TestDirent and TestGetdirentries on freebsd with Go 1.11
Reverts CL 88475
Change-Id: I04318f59c6fbf148c75ce3667255a0c0428288e2
Reviewed-on: https://go-review.googlesource.com/c/sys/+/183897
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Benny Siegert <bsiegert@gmail.com >
2019-06-26 15:08:13 +00:00
Tobias Klauser
c5567b49c5
unix: add Getdents on dragonfly
...
Add a syscall wrapper for Getdents on dragonfly and use it to
implement ReadDirent
Change-Id: Ie54c0edeaf89491cab2355557fb442bd5bec2987
Reviewed-on: https://go-review.googlesource.com/c/sys/+/183227
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Benny Siegert <bsiegert@gmail.com >
2019-06-24 14:20:23 +00:00
Tobias Klauser
e93b963712
unix: use ParseDirent in testGetdirentries
...
Use ParseDirent to get the directory entries instead of manually parsing
them. This fixes the test on dragonfly where type Dirent doesn't have a
Reclen member.
Manually tested on darwin, dragonfly and freebsd.
Change-Id: I234c6aff78243fec8bba8784c1d4948fbbb4d027
Reviewed-on: https://go-review.googlesource.com/c/sys/+/183226
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Benny Siegert <bsiegert@gmail.com >
2019-06-24 14:20:14 +00:00
Tobias Klauser
d432491b91
unix: fix nil pointer dereference in Getdirentries on 32-bit freebsd 12
...
Don't attempt to dereference basep if it's nil, just pass it to
getdirentries_freebsd12 as is.
Change-Id: I043a9ee9262e6333c35fd9ecc52694c8fd2de9f6
Reviewed-on: https://go-review.googlesource.com/c/sys/+/183223
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
Reviewed-by: Yuval Pavel Zholkover <paulzhol@gmail.com >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
TryBot-Result: Gobot Gobot <gobot@golang.org >
2019-06-21 20:38:18 +00:00
Tobias Klauser
4d873483be
unix: add missing import in readdirent_getdirentries.go
...
CL 182321 missed this and the trybots didn't catch it because they
neither test darwin nor dragonfly.
Change-Id: I6093805e702d528dae9035a5acf827099e0c2eaa
Reviewed-on: https://go-review.googlesource.com/c/sys/+/183222
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
2019-06-21 19:03:02 +00:00
Tobias Klauser
d6ba46b060
unix: add test for Getdirentries
...
Copied and adapted from the respective test in std syscall.
Change-Id: Ia35864e201c8b628dfc21a8da79305d5741d4acc
Reviewed-on: https://go-review.googlesource.com/c/sys/+/183219
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
Reviewed-by: Yuval Pavel Zholkover <paulzhol@gmail.com >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
TryBot-Result: Gobot Gobot <gobot@golang.org >
2019-06-21 18:37:10 +00:00
Tobias Klauser
8f4f963083
unix: merge implementation for ReadDirent
...
Provide common implementation for ReadDirent based on Getdents for
aix, *bsd and linux.
Add Getdents on aix as a wrapper around getdirent.
Keep the implementation for ReadDirent based on Getdirentries for
darwin and dragonfly.
Change-Id: I09094156a1452118ba48af4f14dfe44b1ab745d3
Reviewed-on: https://go-review.googlesource.com/c/sys/+/182321
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
Reviewed-by: Benny Siegert <bsiegert@gmail.com >
2019-06-21 18:36:46 +00:00
Tobias Klauser
943d5127bd
unix: add support to get/set Linux capabilities
...
Add wrappers for Getcap/Setcap on Linux as well as some related types
and consts.
Change-Id: I07764c2e64717214850ea3cbdc238e313d1e38c4
Reviewed-on: https://go-review.googlesource.com/c/sys/+/183218
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
2019-06-21 15:33:39 +00:00
Tobias Klauser
06bbe82148
unix: correctly rename Val member in Sigset_t on freebsd
...
The generated name X__bits should be changed to Val to match the type on
Linux. This was done manually in CL 179099 when Sigset_t was added for
freebsd. Modify mkpost.go to do it, so future changes won't revert the
rename.
Change-Id: I0ce135cbd8d03648a1576244d9c977b39c8f5889
Reviewed-on: https://go-review.googlesource.com/c/sys/+/183220
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
2019-06-21 13:41:30 +00:00
Tobias Klauser
6f217b454f
unix: add AT_SYMLINK_FOLLOW const on openbsd
...
Change-Id: I60d7ce4a06e5a016cbb9fbf773a34748a5fd96f5
Reviewed-on: https://go-review.googlesource.com/c/sys/+/182899
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
2019-06-20 07:01:43 +00:00
Tobias Klauser
6f551f7d2b
unix: add AT_SYMLINK_FOLLOW const on netbsd
...
Change-Id: I6f6d9534389800b6f245021db051f96e90411173
Reviewed-on: https://go-review.googlesource.com/c/sys/+/182897
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Benny Siegert <bsiegert@gmail.com >
2019-06-20 07:01:26 +00:00
Tobias Klauser
69e3a3a65b
unix: fix TestFchmodat on illumos
...
Like linux/android, illumos doesn't support Fchmodat flags != 0.
The comment already mentions this, so update the condition as well now
that GOOS illumos is known.
Change-Id: Ic6542223129ec5fd8bb56dab3c8a042dc29ec7cc
Reviewed-on: https://go-review.googlesource.com/c/sys/+/179362
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org >
2019-05-31 13:24:40 +00:00
Tobias Klauser
5219a1e1c5
cpu: add missing linkname for libc_getsystemcfg on aix/ppc64
...
This fixes the aix/ppc64 build after CL 179178
Change-Id: Ie8d762b533c05d6ca262030b34ae137140896d44
Reviewed-on: https://go-review.googlesource.com/c/sys/+/179317
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Russ Cox <rsc@golang.org >
2019-05-29 13:00:38 +00:00
Tobias Klauser
abf6ff7781
unix: add MCAST_* constants on linux
...
This will also add two BPF_* consts which weren't added as part of
CL 174978 because they were generated before the Linux version update
in CL 175158.
Change-Id: I5dfecbecb9d94b56d01490a5f17f2250ad5b30d4
Reviewed-on: https://go-review.googlesource.com/c/sys/+/178658
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
2019-05-24 12:25:48 +00:00
Tobias Klauser
0e01d883c5
unix: add RawSockaddrDatalink on aix
...
This is already part of package syscall, so add it to x/sys/unix as
well.
Change-Id: I2eb015dd439d37894519858f010cc45d6e3da50a
Reviewed-on: https://go-review.googlesource.com/c/sys/+/178657
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org >
2019-05-23 14:25:57 +00:00
Tobias Klauser
c432e742b0
unix: remove unused stringsFromByteSlice for tests on aix
...
stringsFromByteSlice is only used in xattr_test.go which isn't enabled
for aix.
Change-Id: I95948cbac285d8efe7f5299de85625cb7541e906
Reviewed-on: https://go-review.googlesource.com/c/sys/+/177839
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Matt Layher <mdlayher@gmail.com >
2019-05-20 20:13:01 +00:00
Tobias Klauser
a5b02f93d8
windows: add "generate" build tag
...
cmd/go supports the "generate" build tag as of CL 175983. Add it to the
files which are just used for generating errors and syscall wrappers.
Also see golang/go#31920
Change-Id: Ib26c90af0ac1fb7bae81366a46dedf028b787566
Reviewed-on: https://go-review.googlesource.com/c/sys/+/175899
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org >
2019-05-09 14:14:14 +00:00
Tobias Klauser
ecd444e865
unix: export KexecFileLoad on linux/arm
...
CL 175158 added the generated kexecFileLoad wrapper but forgot to add
the exported KexecFileLoad and the corresponding //sys line.
Change-Id: Ic94ce83dbb1ecc3d07080b4b4dfe35934ec54d57
Reviewed-on: https://go-review.googlesource.com/c/sys/+/175657
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org >
2019-05-07 16:07:41 +00:00
Tobias Klauser
2953c62de4
unix: update Dockerfile to Linux 5.1
...
Also add KexecFileLoad on linux/arm now that is has SYS_KEXEC_FILE_LOAD.
Change-Id: I519bc2f611b511af994e1c7bbaa07f68cd615ef4
Reviewed-on: https://go-review.googlesource.com/c/sys/+/175158
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org >
2019-05-07 05:39:17 +00:00
Tobias Klauser
c0b26311cb
unix: support generating netbsd/arm64 files in mkall.sh
...
CL 155738 added the generated files but didn't update mkall.sh. Do so
now.
Change-Id: I8681ef175547750bea94b06827ef5f4512dc6de3
Reviewed-on: https://go-review.googlesource.com/c/sys/+/174860
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Benny Siegert <bsiegert@gmail.com >
2019-05-02 14:30:02 +00:00
Tobias Klauser
050d976686
unix: drop reference to mkunix.pl from comment
...
mkunix.pl doesn't exist in x/sys/unix, so drop the reference to it from
the _zero godoc comment.
Change-Id: I7a638a5248b72c4dffc83da1514e5d861c532127
Reviewed-on: https://go-review.googlesource.com/c/sys/+/174858
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org >
2019-05-02 14:15:30 +00:00
Tobias Klauser
12500544f8
unix: fix cmsg alignment on aix
...
This was missing from CL 171941.
Change-Id: I14f16355b2fe18103d2713faf2bebf004248fc0c
Reviewed-on: https://go-review.googlesource.com/c/sys/+/172257
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
Run-TryBot: Ian Lance Taylor <iant@golang.org >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
2019-04-16 15:28:02 +00:00
Tobias Klauser
3fd5a3612c
unix: enable TestPassFD on AIX 7.2 TL >= 2
...
Follow CL 171339 and enable TestPassFD for AIX 7.2 TL >= 2
Change-Id: Icf781798a6f9fe99a57c23bc7f7e7c1361bdcec2
Reviewed-on: https://go-review.googlesource.com/c/sys/+/171941
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org >
2019-04-15 14:56:33 +00:00
Tobias Klauser
4b34438f7a
unix: allow empty string argument to SetsockoptString
...
Don't panic with "index out of range" on empty string argument.
Follows CL 170937 which did the sane for package syscall.
Updates golang/go#31277
Change-Id: I4feb796d0d58d3637428ae69997cfa3ec28a6b01
Reviewed-on: https://go-review.googlesource.com/c/sys/+/170957
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org >
2019-04-05 15:42:28 +00:00
Tobias Klauser
81d4e9dc47
unix: don't generate raw syscall wrapper for ClockGettime on darwin
...
Follow-up for CL 170299
CL 170297 erroneously introduced a raw syscall wrapper for ClockGettime
on darwin. Make sure it isn't generated by mistake again.
Change-Id: Ie9ecdc950e5ab6cc85937008cd140847cffac42f
Reviewed-on: https://go-review.googlesource.com/c/sys/+/170301
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org >
2019-04-03 15:24:47 +00:00
Tobias Klauser
baf5eb976a
unix: remove ClockGettime for darwin/amd64 on Go 1.11
...
This was erroneously introduced by CL 170297
SYS_CLOCK_GETTIME is not defined on darwin.
Fixes golang/go#31203
Change-Id: I39b1f19c4c9d7e9cb67569c4cb2764d64f158c0f
Reviewed-on: https://go-review.googlesource.com/c/sys/+/170299
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org >
2019-04-02 14:25:45 +00:00
Tobias Klauser
e4093980e8
unix: add SysctlClockinfo on darwin
...
Add type Clockinfo and the SysctlClockinfo function to query clock rate
information from the kernel.
Change-Id: Ic29edcacee3b3f6125bb218b82c2a2496c39213a
Reviewed-on: https://go-review.googlesource.com/c/sys/+/170297
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org >
2019-04-02 05:46:13 +00:00
Tobias Klauser
6c81ef8f67
unix: add SysctlClockinfo on OpenBSD
...
OpenBSD (like NetBSD) uses sysctl with struct clockinfo to get clock
rate information from the kernel. Add type Clockinfo and the
SysctlClockinfo function to query this information.
Change-Id: I35070a82b8de23dcd7592e8654dcc5eeee143b5b
Reviewed-on: https://go-review.googlesource.com/c/sys/+/168057
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Matt Layher <mdlayher@gmail.com >
2019-03-18 19:57:19 +00:00
Tobias Klauser
fead790013
cpu: use unix.Getsystemcfg to detect POWER8/POWER9 on aix/ppc64
...
Tested on an aix-ppc64 gomote builder.
Fixes golang/go#30732
Change-Id: I8e74dcde8bd4ded0f425c90eefe799970ebd325c
Reviewed-on: https://go-review.googlesource.com/c/sys/+/166466
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
2019-03-12 06:12:37 +00:00
Tobias Klauser
c8c8c57fd1
unix: run mkasm independent of mktypes in mkall.sh
...
Move the $mkasm invocation out of the if [ -n "$mktypes" ]
Change-Id: I6fd34703e2f438b23adceada3161fc4b40ba4fce
Reviewed-on: https://go-review.googlesource.com/c/sys/+/166467
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org >
2019-03-11 15:21:10 +00:00
Tobias Klauser
7c207b7624
unix: add Getsystemcfg on aix
...
This will be used to detect POWER8/POWER9 support in x/sys/cpu
Updates golang/go#30732
Change-Id: I10ad6e440920c34c378bf6783417bc09421ff500
Reviewed-on: https://go-review.googlesource.com/c/sys/+/166465
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Clément Chigot <clement.chigot@atos.net >
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org >
2019-03-11 15:20:45 +00:00
Tobias Klauser
572b51eaf7
unix: add SetsockoptPacketMreq on Linux
...
Add SetsockoptPacketMreq to set packet socket options used to
configure physical-layer multi‐casting and promiscuous mode
(PACKET_ADD_MEMBERSHIP, PACKET_DROP_MEMBERSHIP).
Change-Id: I0f292315ad1c57e6a3d1dd12f5f29be70d8bfd54
Reviewed-on: https://go-review.googlesource.com/c/sys/+/165977
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org >
2019-03-07 16:26:37 +00:00
Tobias Klauser
3e9a981b8d
unix: add functions to get/set tpacket socket options
...
Add GetsockoptTpacketStats and GetsockoptTpacketStatsV3 to get tpacket
statistics (for TPACKET_V2 and TPACKET_V3).
Add SetsockoptTpacketReq and SetsockoptTpacketReq3 to set up tpacket
v2/v3 ring buffers.
Change-Id: Ic2870be22be7d74141f682e515a682df28e1c814
Reviewed-on: https://go-review.googlesource.com/c/sys/+/165558
Reviewed-by: Ian Lance Taylor <iant@golang.org >
2019-03-06 15:53:19 +00:00
Tobias Klauser
a98ae47d97
unix: on ARM GNU/Linux let Pipe fall back to pipe
...
Follow CL 165217 which did this for package syscall.
Android O seems to require Pipe to call the pipe2 system call.
But kernel version 2.6.23 only supports pipe, not pipe2.
So try pipe2 first, then fall back to pipe.
Updates golang/go#30549
Change-Id: Icf21433fa046ff137c0265fa96410229def482f7
Reviewed-on: https://go-review.googlesource.com/c/sys/+/165297
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org >
2019-03-06 07:15:16 +00:00
Tobias Klauser
30e92a19ae
unix: add Lutimes
...
Add Lutimes wrapping UtimesNanoAt.
Updates golang/go#30487
Change-Id: Ic5bb3b4d88be5806522eaef9bd9b8b0f5c1c8f42
Reviewed-on: https://go-review.googlesource.com/c/sys/+/164662
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
2019-03-05 06:45:18 +00:00
Tobias Klauser
e844e0132e
unix: update Dockerfile to Go 1.12 and Linux 5.0
...
Also enable KexecFileLoad on linux/{arm64,riscv64} now that they have
SYS_KEXEC_FILE_LOAD.
Change-Id: I1c52d09a1a617794f2df697e4966c4c24a166611
Reviewed-on: https://go-review.googlesource.com/c/sys/+/164997
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org >
2019-03-04 15:46:30 +00:00
Tobias Klauser
92a0ff1e1e
cpu: don't panic on error reading /proc/self/auxv
...
On Android /proc/self/auxv is not readable, leading to a panic in init.
Instead of panic'ing in this case, introduce the Initialized global bool
to report whether the CPU features were initialized i.e. /proc/self/auxv
was successfullly read.
Fixes golang/go#30413
Change-Id: Ib520f202990614a76bceb0bf9d19a88eadd13e10
Reviewed-on: https://go-review.googlesource.com/c/164057
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
2019-02-28 07:16:10 +00:00
Tobias Klauser
cd391775e7
unix: add type NdUseroptmsg on Linux
...
Change-Id: I06997987f2d54a1fbca098878a3bac473ec1bfc0
Reviewed-on: https://go-review.googlesource.com/c/163379
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org >
TryBot-Result: Gobot Gobot <gobot@golang.org >
2019-02-22 17:13:17 +00:00
Tobias Klauser
a9d3bda3a2
unix: add SetsockoptCanRawFilter for linux
...
Add the SetsockoptCanRawFilter func and CanFilter type to allow kernel
message filtering on AF_CAN sockets.
Fixes golang/go#29638
Change-Id: I4042825527ba2bc9aeb8dbe70d1960a06b15c29e
Reviewed-on: https://go-review.googlesource.com/c/163318
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org >
2019-02-22 07:27:16 +00:00
Tobias Klauser
b4e8571b14
cpu: fix build for GOARCH=ppc64{,le} on GOOS!=linux
...
The current implementation for ppc64{,le} only supports linux (through
HWCaps read from /proc/self/auxv) and fails to build e.g. on
aix/ppc64.
Change-Id: I5e1efe75c781fd08bc7bbe797df88295726ba62b
Reviewed-on: https://go-review.googlesource.com/c/162798
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
2019-02-21 07:52:27 +00:00
Tobias Klauser
e77772198c
cpu: fix build for GOARCH=arm64 on GOOS!=linux
...
The current implementation for arm64 only supports linux (through HWCaps
read from /proc/self/auxv) and fails to build e.g. on darwin/arm64.
Fixes golang/go#30237
Change-Id: I9f32a285760795441a829b0a81b2d5aff04e2dc4
Reviewed-on: https://go-review.googlesource.com/c/162797
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
Run-TryBot: Ian Lance Taylor <iant@golang.org >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
TryBot-Result: Gobot Gobot <gobot@golang.org >
2019-02-14 21:44:11 +00:00
Tobias Klauser
41f3e65849
unix/linux: update Dockerfile to glibc 2.29 and Go 1.12beta2
...
Drop the manually defined *_XDP constants which were added to glibc.
Install python3 instead of python because glibc's confugure script now
requires at least 3.4.
Change-Id: Ic19ff4d8aa4dbadeb5438e331ccafeafc2cc9925
Reviewed-on: https://go-review.googlesource.com/c/160957
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org >
2019-02-04 20:37:06 +00:00
Tobias Klauser
afcc84fd75
unix: add RND* ioctl consts on Linux
...
Change-Id: I79c721d0f4fe097daf096dc7404675aa3048bf6a
Reviewed-on: https://go-review.googlesource.com/c/160757
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
2019-02-01 15:26:29 +00:00
Tobias Klauser
2970a3744d
cpu: detect RDRAND and RDSEED instructions on x86
...
Change-Id: I2d0094d64ba12f888758aeebdb43aed353ddeeb9
Reviewed-on: https://go-review.googlesource.com/c/160577
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
2019-02-01 07:34:06 +00:00
Tobias Klauser
aca44879d5
unix: add ioctl wrappers to get and set RTC time on Linux
...
Add IoctlGetRTCTime and IoctlSetRTCTime to get and set the RTC time via
the RTC_RD_TIME and RTC_SET_TIME ioctls.
Change-Id: I63190026be39746599c2cd7116603d4a1d5bd695
Reviewed-on: https://go-review.googlesource.com/c/160397
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
2019-01-30 15:09:45 +00:00
Tobias Klauser
d57399882c
unix: regenerate sysnum files for freebsd/arm64 and netbsd/arm64
...
The zsysnum_{freebsd,netbsd}_arm64.go files were generated before
mksysnum was converted to Go in CL 152677. Regenerate them to adjust the
comment specifying the command used for generation.
Change-Id: I8f00249848fe20e388f255e9e615da1e0727c140
Reviewed-on: https://go-review.googlesource.com/c/159778
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org >
2019-01-29 07:23:52 +00:00
Tobias Klauser
b90733256f
unix: use glibc release branch in Dockerfile
...
It shouldn't make a difference for generating types and consts, but
let's use the glibc release branch anyway.
Fixes golang/go#29873
Change-Id: I15a3df250f5ae6181b2d036a10e0523ebe44ac3f
Reviewed-on: https://go-review.googlesource.com/c/158997
Reviewed-by: Ian Lance Taylor <iant@golang.org >
2019-01-24 10:00:55 +00:00
Tobias Klauser
054c452bb7
unix: add socket error queue constants and types from linux/errqueue.h
...
Also add additional packet timestamping constants and types defined
in the same header.
Change-Id: I4280f925b46e229f4c3a83a7fee4612592314016
Reviewed-on: https://go-review.googlesource.com/c/158761
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org >
2019-01-22 07:17:31 +00:00
Tobias Klauser
11f53e0313
unix: use int8 for RawSockaddrUnix.Path on linux/riscv64
...
On linux/riscv64, char defaults to unsigned, so explicitly make
RawSockaddrUnix.Path signed.
Patch by Ryan O'Leary.
Updates golang/go#27532
Change-Id: If99a3953462ad98f61d8fafcda3ebb71b44e6018
Reviewed-on: https://go-review.googlesource.com/c/157900
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org >
2019-01-16 16:14:47 +00:00
Tobias Klauser
e5ecc2a674
unix: use Renameat2 to implement Renameat on linux/riscv64
...
On linux/riscv64, the renameat syscall no longer exists and has been
superseded by renameat2. Use Renameat2 to implement Renameat on
linux/riscv64.
Based on a patch by Ryan O'Leary.
Updates golang/go#27532
Change-Id: I7c60c7f824750408265f67397b8ac1fa7226f425
Reviewed-on: https://go-review.googlesource.com/c/157899
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
2019-01-16 15:12:25 +00:00
Tobias Klauser
5552a988b7
unix: add Renameat on dragonfly
...
Also add a test now that all unices have Renameat.
Change-Id: I9098662569e9910122dc686559bbd04be06328fa
Reviewed-on: https://go-review.googlesource.com/c/157898
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
2019-01-16 15:07:22 +00:00
Tobias Klauser
a457fd0364
unix: add Signalfd on linux
...
Also add the SFD_* constants and SignalfdSiginfo type.
Change-Id: I3415c212b85c9d5a940ba2bf70f43739a2630d78
Reviewed-on: https://go-review.googlesource.com/c/157897
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org >
2019-01-15 15:29:22 +00:00
Tobias Klauser
48ac38b7c8
unix: get *BSD syscalls.master files using HTTPS
...
Use the https:// URLs to get syscalls.master for freebsd, openbsd and
dragonfly. For netbsd, keep using the http:// URL since HTTPS is not
supported.
Change-Id: Ibcbd19d5e3b4585552ea65dcdc742c2e7bfce944
Reviewed-on: https://go-review.googlesource.com/c/157057
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
2019-01-09 14:50:17 +00:00
Tobias Klauser
82a175fd15
unix/linux: update Dockerfile to Linux Kernel 4.20
...
Change-Id: Iadc92b5afd18a5c1df0bc42b0d6f52f0b768b47a
Reviewed-on: https://go-review.googlesource.com/c/155979
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org >
2019-01-02 15:56:01 +00:00
Tobias Klauser
a91c4d227e
unix: add support for freebsd/arm64
...
This wasn't actually generated on freebsd/arm64 yet. It's mostly a copy
of the amd64 files for now.
Updates golang/go#24715
Change-Id: If24c3c5803a4708f0b26d738f690cbea1694ca88
Reviewed-on: https://go-review.googlesource.com/c/155978
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org >
2019-01-02 15:55:44 +00:00
Tobias Klauser
b4a75ba826
unix: generate linux/sparc64 go files using Docker
...
With cgo supporting sparc64 as of CL 102555 and CL 132155, the Docker
based build system can be used to generate file for linux/sparc64 as
well.
Updates golang/go#15282
Change-Id: I109e55f39d3229b24b0029c42074e439c6c54dc8
Reviewed-on: https://go-review.googlesource.com/c/102655
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
2018-12-21 14:31:28 +00:00
Tobias Klauser
97b4c2a929
unix: update Dockerfile to Go 1.12beta1
...
The removed paddings are expected behavior resulting from CL 150602.
Change-Id: I2c80405e20f92cca4890230c6f0644b724a8076e
Reviewed-on: https://go-review.googlesource.com/c/155257
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
2018-12-20 15:53:39 +00:00
Tobias Klauser
4d1cda033e
unix: remove Flock syscall for aix
...
AIX doesn't provide a flock() syscall, it was previously emulated in
package syscall by using fcntl. This emulation was removed in CL 152397.
Since unix.Flock wraps syscall.Flock, the build currently fails on aix
without this change.
Change-Id: Ie887619cd64ae009ea43f00c74e450a5b8f998ac
Reviewed-on: https://go-review.googlesource.com/c/153938
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Clément Chigot <clement.chigot@atos.net >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
2018-12-13 20:03:52 +00:00
Tobias Klauser
586ba8c9bb
unix: add SyncFileRange on linux/arm
...
Use the arm_sync_file_range to implement SyncFileRange.
This is an alias for sync_file_range2 syscall which is already used to
implement SyncFileRange on ppc64x. These have the order of the flags and
offset arguments reversed in order to fit the syscall arguments within 6
registers.
For more information see:
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=edd5cd4a9424f22b0fa08bef5e299d41befd5622
This makes TestSyncFileRange build and pass on linux/arm.
Change-Id: I1316328ebcf550a3fb70f9ce5ebf54d8bcaa932c
Reviewed-on: https://go-review.googlesource.com/c/153939
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org >
2018-12-13 15:07:53 +00:00
Tobias Klauser
73d4af5aa0
unix: evaluate cmsg alignment in cmsgAlignOf at compile time
...
runtime.GOOS and runtime.GOARCH are constants, thus all comparisons are
evaluated at compile time.
Follow-up for CL 153619 to make the code consistent with the syscall
package, cf. CL 153837
Change-Id: I0520d88c1636c6ed2acad69fce85a28042eafe56
Reviewed-on: https://go-review.googlesource.com/c/153937
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
Reviewed-by: Joel Sing <joel@sing.id.au >
TryBot-Result: Gobot Gobot <gobot@golang.org >
2018-12-13 08:13:44 +00:00
Tobias Klauser
ad97f365e1
unix: avoid index out of range in Vmsplice with empty iovs
...
Passing an empty iovs []Iovec slice to Vmsplice leads to an index out of
range panic. Fix this by passing an nil unsafe.Pointer to the underlying
syscall in case of an empty slice.
Change-Id: If1844c1b2eb0833de598aed7e79b9fcf061f7975
Reviewed-on: https://go-review.googlesource.com/c/153317
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org >
2018-12-08 17:50:41 +00:00
Tobias Klauser
5ac8a444bd
unix: export FdSet bits field on freebsd
...
After CL 136816 the bits member of the FdSet struct is no longer
exported. Make sure to retain it in mkpost.go and rename it to Bits
as on all other systems.
Change-Id: I860b307a80c7e29b4a75d9d916d879ee0a31c014
Reviewed-on: https://go-review.googlesource.com/c/149897
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Yuval Pavel Zholkover <paulzhol@gmail.com >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
2018-11-16 15:22:17 +00:00
Tobias Klauser
66b7b1311a
unix: add IoctlGetPtmget on netbsd
...
This ioctl is used to implement ptsname on netbsd.
Change-Id: Ic87f1bf7d15c6fbef0c2226a06a4983a504c3f30
Reviewed-on: https://go-review.googlesource.com/c/148097
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org >
2018-11-07 16:59:24 +00:00
Tobias Klauser
3a76605856
unix: test UtimesNanoAt on darwin
...
Change-Id: I18354d29db909227ae75df1c8b1ab7888375f8db
Reviewed-on: https://go-review.googlesource.com/c/147740
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
2018-11-06 13:59:30 +00:00
Tobias Klauser
3a27cdcbcf
unix: don't use deprecated sys/capability.h header on FreeBSD
...
sys/capability.h is deprecated, use sys/capsicum.h instead.
Change-Id: I05a3b8ff28d4df6536a3f10e0da7381b48329738
Reviewed-on: https://go-review.googlesource.com/c/147737
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
2018-11-06 13:43:33 +00:00
Tobias Klauser
9b800f95db
unix: avoid index out of range in *setxattr on BSD
...
Passing an empty data []byte to Fsetxattr/Setxattr/Lsetxattr leads
to an index out of range panic. Fix this by passing an nil
unsafe.Pointer to the underlying syscall in this case.
Change-Id: I5ef3983c6304c5317ed5b49afc4ed19791864dbb
Reviewed-on: https://go-review.googlesource.com/c/146198
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
2018-10-31 14:35:58 +00:00
Tobias Klauser
7e31e0c00f
unix: add remaining *at functions on dragonfly
...
Add Faccessat, Fchownat, Linkat, Mkdirat, Mknodat, Symlinkat and
Unlinkat.
Change-Id: I9a2758ea2ca31aa59c57ead01838c08cbab2bbe1
Reviewed-on: https://go-review.googlesource.com/c/145819
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org >
2018-10-30 15:01:19 +00:00
Tobias Klauser
f7626d0b15
unix: add remaining *at functions on netbsd
...
Add Fchownat, Linkat, Mkdirat, Mkfifoat, Mknodat, Openat, Readlinkat,
Renameat, Symlinkat and Unlinkat.
Change-Id: Id498b2f1a99f281599bc226a0c50a13172e36e4f
Reviewed-on: https://go-review.googlesource.com/c/145818
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
2018-10-30 14:20:55 +00:00
Tobias Klauser
c8e336422f
unix: add remaining *at functions on openbsd
...
Add Fchownat, Linkat, Mkdirat, Mkfifoat, Mknodat, Renameat, Symlinkat
and Unlinkat.
Change-Id: I023214f3b65e3b7d620fa7e1ce12f1c35a765cd9
Reviewed-on: https://go-review.googlesource.com/c/145817
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
2018-10-30 13:39:55 +00:00
Tobias Klauser
d69651ed34
unix: add Readlinkat on openbsd
...
Change-Id: I1069c327a5ce01ca2bfa37a889d3c6fd72b7859d
Reviewed-on: https://go-review.googlesource.com/c/145517
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org >
2018-10-29 17:45:26 +00:00