Tobias Klauser
e293359b92
unix: use correct cmsg alignment for netbsd/arm64
...
netbsd/arm64 requires 128-bit alignment for cmsgs.
Change-Id: I49d7a4dc223f15322c795569292b24200cedd389
Reviewed-on: https://go-review.googlesource.com/c/sys/+/258457
Trust: Tobias Klauser <tobias.klauser@gmail.com >
Trust: Benny Siegert <bsiegert@gmail.com >
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Go Bot <gobot@golang.org >
Reviewed-by: Benny Siegert <bsiegert@gmail.com >
2020-09-30 18:24:49 +00:00
Tobias Klauser
4d22bbb62b
unix: remove darwin support from mksysnum.go
...
Since CL 250437 this package no longer supports non-libc, direct
syscalls on darwin. Thus support for generating zsysnum_*.go files on
darwin can be removed from the generating mksysnum.go program.
Change-Id: I8916ddcd028a60d876ad43b8ce18a1c0925ce272
Reviewed-on: https://go-review.googlesource.com/c/sys/+/258058
Trust: Tobias Klauser <tobias.klauser@gmail.com >
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Go Bot <gobot@golang.org >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
2020-09-29 08:30:18 +00:00
Tobias Klauser
9d91bd6205
unix: implement Getwd using getcwd from libSystem on darwin
...
Directly wrap the getcwd implementation provided by libSystem.dylib on
darwin and use it to implement Getwd like on the BSDs. This allows to
drop the custom implementation using getAttrList and to merge the
implementation of Getwd for darwin and the BSDs in syscall_bsd.go.
Change-Id: I62d38a239a7279fb95c912344bda2830856d4da4
Reviewed-on: https://go-review.googlesource.com/c/sys/+/257497
Trust: Tobias Klauser <tobias.klauser@gmail.com >
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Go Bot <gobot@golang.org >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
2020-09-26 10:08:07 +00:00
Tobias Klauser
aee5d888a8
unix: add IoctlFile{Clone,CloneRange,DedupeRange} on linux
...
Add wrappers for the FICLONE, FICLONERANGE and FIDEDUPERANGE ioctl
operations on linux. See the ioctl_ficlone(2), ioctl_ficlonerange(2) and
ioctl_fideduperange(2) man pages for details.
Change-Id: If3bad98facc362d4f7524e8d7a128815e9e2f204
Reviewed-on: https://go-review.googlesource.com/c/sys/+/256000
Trust: Tobias Klauser <tobias.klauser@gmail.com >
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Go Bot <gobot@golang.org >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
2020-09-22 07:02:32 +00:00
Tobias Klauser
e10f822d58
unix: import accept4 from libsocket.so on illumos
...
The accept4 symbol is provided in libsocket.so on illumos. Follow-up fix
for CL 254717.
Change-Id: Iad70e998ea4ab80763288a300797eae8bed7de1a
Reviewed-on: https://go-review.googlesource.com/c/sys/+/256277
Trust: Tobias Klauser <tobias.klauser@gmail.com >
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Go Bot <gobot@golang.org >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
2020-09-22 07:02:05 +00:00
Tobias Klauser
cb7fb32132
unix: allow overriding GOOS using GOOS_TARGET in mksyscall.go
...
The syscall wrapper generator utility is platform independent and can in
principle be run on a GOOS other than the one we're generating the
syscall wrappers for. Allow overriding GOOS by setting GOOS_TARGET,
similar to other generator programs in the repo.
Also remove the unused GOARCH_TARGET override in the same file.
Change-Id: I91459113af9f662f12a99b99c581c7f2615cb394
Reviewed-on: https://go-review.googlesource.com/c/sys/+/256278
Trust: Tobias Klauser <tobias.klauser@gmail.com >
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Go Bot <gobot@golang.org >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
2020-09-22 07:01:10 +00:00
Tobias Klauser
af09f7315a
unix: add FcntlFstore on darwin
...
This allows to perform a fcntl syscall with the F_PREALLOCATE command.
See man fcntl(2) on macOS for details.
Change-Id: I21f95b91269513064859425ab7adc42a73d6adb5
Reviewed-on: https://go-review.googlesource.com/c/sys/+/255917
Trust: Tobias Klauser <tobias.klauser@gmail.com >
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Go Bot <gobot@golang.org >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
2020-09-18 17:44:21 +00:00
Tobias Klauser
efd3b9a0ff
unix: skip TestClonefile* on ENOSYS or ENOTSUP
...
The clonefile syscalls added by CL 254757 might fail on certain macOS
versions and/or file systems according to the clonefile(2) manpage. Skip
the corresponding tests in these cases.
This fixes the test failure on the darwin-amd64-10_12 builder.
Change-Id: Iae1d2b6d8e2fcddc129d639f003fbb1817b45006
Reviewed-on: https://go-review.googlesource.com/c/sys/+/255198
Trust: Tobias Klauser <tobias.klauser@gmail.com >
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Go Bot <gobot@golang.org >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
2020-09-17 07:31:48 +00:00
Tobias Klauser
648f2a0390
unix: add clonefile flags for clonefile syscalls on darwin
...
These are used with the flags parameter of
Clonefile/Clonefileat/Fclonefileat added by CL 254757.
Change-Id: Ia869315f319003c366f201f82a04b5801be08993
Reviewed-on: https://go-review.googlesource.com/c/sys/+/255197
Trust: Tobias Klauser <tobias.klauser@gmail.com >
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Go Bot <gobot@golang.org >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
2020-09-17 06:19:48 +00:00
Tobias Klauser
dbad9cb7cb
unix: add Pipe2 on illumos
...
Change-Id: Ib8d259c16b2ea4081f5ee8d927ef8658315268b8
Reviewed-on: https://go-review.googlesource.com/c/sys/+/254979
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 >
2020-09-16 08:47:44 +00:00
Tobias Klauser
6d893a6b69
unix: add Accept4 on illumos
...
Wrap the accept syscall which is available on illumos.
Also use tabs instead of spaces in the //sys comments in
syscall_illumos.go
Change-Id: Ic7fbfe29b44c6a168b9be4d4679a6321cc891bf1
Reviewed-on: https://go-review.googlesource.com/c/sys/+/254717
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Go Bot <gobot@golang.org >
Reviewed-by: Matt Layher <mdlayher@gmail.com >
Trust: Tobias Klauser <tobias.klauser@gmail.com >
2020-09-15 05:08:20 +00:00
Tobias Klauser
d2e65c121b
unix: update Dockerfile to Go 1.15.1
...
Change-Id: Ia1a7cecc953968e04e710b065668ec9d06c2c1d3
Reviewed-on: https://go-review.googlesource.com/c/sys/+/253437
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Matt Layher <mdlayher@gmail.com >
2020-09-08 13:41:30 +00:00
Tobias Klauser
196b9ba873
unix: re-add SYS___SYSCTL on darwin
...
CL 250437 removed all SYS_* consts on darwin as direct syscalls are no
longer supported on this platform. However, some external packages (e.g.
github.com/shirou/gopsutil) still seem to rely on SYS___SYSCTL being
defined to implement their own sysctl wrappers. Re-add SYS___SYSCTL to
avoid breaking these packages.
Change-Id: I1ef1c05ba47a4b89be61ee8919d1651b7531d9c7
Reviewed-on: https://go-review.googlesource.com/c/sys/+/251738
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org >
2020-08-31 18:03:12 +00:00
Tobias Klauser
157a740278
unix: fix build with Go 1.12 on darwin
...
CL 250437 broke the build with Go 1.12 on darwin, due to
SYS_GETDIRENTRIES64 being removed. However, this is still needed to
implement Getdirentries for Go 1.12 because it does not provide
syscall_syscallPtr for fdopendir. Thus, add _SYS_GETDIRENTRIES64 as an
unexported const.
Change-Id: I52b420095deeb50d7fac002702dfce01cbf34bb7
Reviewed-on: https://go-review.googlesource.com/c/sys/+/251317
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org >
2020-08-28 19:40:41 +00:00
Tobias Klauser
c663848e9a
unix: remove darwin direct syscall special case from mksyscall.go
...
Since CL 250437 this package no longer supports non-libc, direct
syscalls. Thus the corresponding special cases can be removed from
the generating mksyscall.go program.
Change-Id: I54be144de8ffd483f10c7b3a69b0761b83542c55
Reviewed-on: https://go-review.googlesource.com/c/sys/+/251318
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
Reviewed-by: Matt Layher <mdlayher@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
2020-08-28 16:14:17 +00:00
Tobias Klauser
6fcdbc0bbc
unix: drop support for pre-1.12 direct syscalls on darwin
...
Go 1.12 and newer are using libSystem for syscalls on darwin.
Go 1.11 is the last release to use direct syscalls. It hasn't been
supported since the release of Go 1.13 in September 2019, so drop
support for direct syscalls.
Change-Id: I2baf6f3d1031de8e474dc770369a25147e5efe2a
Reviewed-on: https://go-review.googlesource.com/c/sys/+/250437
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org >
2020-08-28 08:09:24 +00:00
Tobias Klauser
c12d262b63
unix: cap RLIMIT_NOFILE soft limit in TestRlimit on darwin
...
On some machines, kern.maxfilesperproc is 4096. If Rlimit.Cur is larger
than that, Setrlimit will get an errEINVAL.
Same as CL 246658 did in package syscall.
Updates golang/go#40564
Change-Id: I8c45a23352fa2039772e04205680640e8a0e1840
Reviewed-on: https://go-review.googlesource.com/c/sys/+/250000
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Matt Layher <mdlayher@gmail.com >
2020-08-24 13:15:25 +00:00
Tobias Klauser
2bddbd2f0c
unix: make IoctlSetPointerInt available on all platforms
...
This may be used with unix.TIOCSPGRP which is available on platforms
other than linux.
Fixes golang/go#40986
Change-Id: Ic96b119e68395e5b6c5f33504ad40f3dfd4804f7
Reviewed-on: https://go-review.googlesource.com/c/sys/+/250001
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Matt Layher <mdlayher@gmail.com >
2020-08-24 13:14:58 +00:00
Tobias Klauser
6a926be9bd
unix: update Dockerfile to Go 1.15
...
Change-Id: Ic3deb101db06686ccecdda679e715782df11b895
Reviewed-on: https://go-review.googlesource.com/c/sys/+/248137
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
2020-08-12 15:58:32 +00:00
Tobias Klauser
1b9f1253b3
unix: update Dockerfile to Go 1.15rc2
...
Change-Id: I830933bb7d6b2e6683f6f7b135d015f54fbcaded
Reviewed-on: https://go-review.googlesource.com/c/sys/+/247657
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Matt Layher <mdlayher@gmail.com >
2020-08-10 15:15:05 +00:00
Tobias Klauser
1030fc2bf1
unix: update BPF consts to Linux kernel 5.8
...
Change-Id: I81fe749808d48bfafdaf55c266168f9d3a773294
Reviewed-on: https://go-review.googlesource.com/c/sys/+/247158
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Matt Layher <mdlayher@gmail.com >
2020-08-08 12:01:58 +00:00
Tobias Klauser
5acd03effb
unix: update Dockerfile to glibc 2.32
...
Change-Id: Ia5ebb34a743c6e676d3cb2febaefc55afa9fc7ac
Reviewed-on: https://go-review.googlesource.com/c/sys/+/247157
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Matt Layher <mdlayher@gmail.com >
2020-08-06 12:55:47 +00:00
Tobias Klauser
a37d78b922
unix: check Faccessat2 returning EPERM in Faccessat
...
Some systems (e.g. the linux-arm and linux-arm64-packet builders) return
EPERM instead of ENOSYS on unimplemented syscalls. Fall back to the
existing glibc-like implementation in Faccessat in this case as well.
This fixes tests on the linux-arm and linux-arm64-packet builders after
CL 246537.
Change-Id: I7d7598f9694a2db19bd17e79f333d5de3a31c6e2
Reviewed-on: https://go-review.googlesource.com/c/sys/+/246817
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
2020-08-06 06:09:01 +00:00
Tobias Klauser
fcf3340312
unix: add SI_LOAD_SHIFT on Linux
...
This is used to convert the loadavg values read using Sysinfo into
float.
Change-Id: I3866c17c908a463373db89690152acc720c73ef3
Reviewed-on: https://go-review.googlesource.com/c/sys/+/246897
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
Reviewed-by: Matt Layher <mdlayher@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
2020-08-06 06:08:41 +00:00
Tobias Klauser
64077c9b56
unix: add Faccessat2 and use it in Faccessat if available
...
Linux kernel 5.8 added the faccessat2 syscall taking a flags argument.
Attempt to use it in Faccessat and fall back to the existing
implementation mimicking glibc faccessat.
Tested on Debian Buster with manually built Linux kernel 5.8
Suggested by Ian Lance Taylor.
Change-Id: Ia14f744a63dde7ff2dea34935cabc62937de9cb5
Reviewed-on: https://go-review.googlesource.com/c/sys/+/246537
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
2020-08-03 21:05:38 +00:00
Tobias Klauser
fd5f0c170a
unix: update Dockerfile to Linux 5.8
...
Change-Id: If6643e7e092c5d482f9cefe838640ebcec22188e
Reviewed-on: https://go-review.googlesource.com/c/sys/+/246417
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Matt Layher <mdlayher@gmail.com >
2020-08-03 15:09:36 +00:00
Tobias Klauser
3e129f6d46
unix: add CPU states constants on netbsd
...
Generated on NetBSD 9.0
Also add the sys/sched.h include in includes_FreeBSD in mkerrors.sh
which was missing in CL 244518.
Change-Id: I257e103849f9e0c6bbf1061eaaa187e277188f84
Reviewed-on: https://go-review.googlesource.com/c/sys/+/245217
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Benny Siegert <bsiegert@gmail.com >
2020-07-28 10:24:40 +00:00
Tobias Klauser
2d971f7391
unix: update Dockerfile to Go 1.15rc1
...
This verifies that go tool cgo -godefs in Go 1.15 is able to generate all
consts and types in this package.
Change-Id: Ic63d15427f27527d7a6f8dc780ab560cde434bc8
Reviewed-on: https://go-review.googlesource.com/c/sys/+/244977
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Matt Layher <mdlayher@gmail.com >
2020-07-27 15:44:30 +00:00
Tobias Klauser
0e2f3a6983
unix: add CPU states constants on freebsd
...
Generated on FreeBSD 12.1
Change-Id: Ieb622638b85b930d748a04d92efeeaef0502eb33
Reviewed-on: https://go-review.googlesource.com/c/sys/+/244518
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Matt Layher <mdlayher@gmail.com >
2020-07-24 16:12:37 +00:00
Tobias Klauser
76b94024e4
unix: add SysctlTimeval on *bsd and darwin
...
Change-Id: I18daa353d101e6636a732288c8276d9f68d25f90
Reviewed-on: https://go-review.googlesource.com/c/sys/+/244237
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Matt Layher <mdlayher@gmail.com >
2020-07-22 17:55:00 +00:00
Tobias Klauser
a8459c1583
unix: add CPU states constants on openbsd
...
Generated on OpenBSD 6.6
Change-Id: I1b9f609efe186fc2af5252613556a48eeacbe975
Reviewed-on: https://go-review.googlesource.com/c/sys/+/244217
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Matt Layher <mdlayher@gmail.com >
2020-07-22 17:53:23 +00:00
Tobias Klauser
ddb9806d33
unix: add FS_IOC_SETFLAGS on linux
...
Change-Id: I455c008a114a017a6ecedb134f9af17d14dd249b
Reviewed-on: https://go-review.googlesource.com/c/sys/+/240037
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Matt Layher <mdlayher@gmail.com >
2020-06-25 21:21:54 +00:00
Tobias Klauser
ed371f2e16
unix: adjust statfs_freebsd11_t member types on freebsd/arm
...
Follow-up for CL 239060.
Otherwise the types don't match when copy()'ing in (*Statfs_t).convertFrom
Change-Id: I8b05247d01e1ac120ea378806793dc1c996f9a4b
Reviewed-on: https://go-review.googlesource.com/c/sys/+/239397
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
2020-06-22 21:40:17 +00:00
Tobias Klauser
4b0db7f3f7
unix: adjust Statfs_t member types on freebsd/arm
...
CL 223698 changed the types of the Fstypename, Mntfromname and Mntonname
fields of type Statfs_t on freebsd/{386,amd64,arm64}, but didn't do so
on freebsd/arm. Since reverting that change now would probably cause
more harm than good, at least make the type consistent on all supported
freebsd/$GOARCH combinations.
Change-Id: I66ba3cdb0290177898237a47d305abb9adc97954
Reviewed-on: https://go-review.googlesource.com/c/sys/+/239060
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
2020-06-22 18:24:13 +00:00
Tobias Klauser
981b61492c
unix: check secondary group membership for Faccessat(..., AT_EACCESS) on Linux
...
Follow glibc's implementation and check secondary group memberships
using Getgroups.
No test since we cannot easily change file permissions when not running
as root and the test is meaningless if running as root.
Fixes golang/go#39660
Change-Id: Idb841242cbd1d8859f4e3c2c26b64a5e9523f9a4
Reviewed-on: https://go-review.googlesource.com/c/sys/+/238722
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
2020-06-20 08:12:46 +00:00
Tobias Klauser
f1bc736245
cpu: adjust godoc comment for hostByteOrder
...
This was changed in CL 194646 to no longer depend on the encoding/binary
package. Adjust the godoc comment as well.
Change-Id: I1f23dc83a4c1256ebce8a283623f79e1bd00da51
Reviewed-on: https://go-review.googlesource.com/c/sys/+/238037
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
2020-06-15 20:00:32 +00:00
Tobias Klauser
2780627062
cpu: add all GOARCHes supported by gccgo
...
Extend hostByteOrder to return the correct byte order for all GOARCHes
currently supported by gccgo.
Change-Id: I019de33aa598c58fe75cd7ad55479e6fce82dd8e
Reviewed-on: https://go-review.googlesource.com/c/sys/+/237897
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
2020-06-15 19:00:26 +00:00
Tobias Klauser
8d3cce7afc
unix: update Dockerfile to Linux 5.7 and Go 1.14.4
...
Some BPF related macros were converted to enum values, so add them to
linux/types.go
Change-Id: I6fa9cc17b6ff3be91f3aa0b7ef2cfe19faf069bd
Reviewed-on: https://go-review.googlesource.com/c/sys/+/236097
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Matt Layher <mdlayher@gmail.com >
2020-06-02 10:08:48 +00:00
Tobias Klauser
417ce2331b
unix: add kern.ncpuonline sysctl on openbsd
...
This is available since OpenBSD 6.4
Generated using mksysctl_openbsd.go on OpenBSD 6.6. but only added
kern.ncpuonline for now.
Change-Id: I092f980180154c2d0fe3f67ab747af64b58c28db
Reviewed-on: https://go-review.googlesource.com/c/sys/+/233757
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Matt Layher <mdlayher@gmail.com >
2020-05-13 11:23:37 +00:00
Tobias Klauser
3aab700007
unix: call gettimeofday libc function directly
...
This also works when invoking the raw syscall on Go ≤ 1.11
Fixes golang/go#38925
Change-Id: I137532da92b457a6853ed1be87c0aa72d2b2c886
Reviewed-on: https://go-review.googlesource.com/c/sys/+/232803
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 >
2020-05-08 21:44:44 +00:00
Tobias Klauser
bc7a7d42d5
internal/unsafeheader: fix typos in comments
...
The typos in the package godoc comment were pointed out in CL 231223
which added similar functionality to the main Go repository. Also
correct the name in the godoc comment for type String.
Change-Id: I69910f3e24b1222190e1adf7fc3d425f0006f96e
Reviewed-on: https://go-review.googlesource.com/c/sys/+/231517
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Bryan C. Mills <bcmills@google.com >
2020-05-01 14:52:40 +00:00
Tobias Klauser
3771e69a9a
unix: on linux-arm64, prefer prlimit to {g,s}etrlimit
...
Do the same as CL 230339 did for package syscall:
Reportedly some Docker images accept the prlimit64 system call,
used by syscall.prlimit, but prohibit the getrlimit and setrlimit
system calls.
Updates golang/go#38604
Change-Id: I4fc9197d7b037c2f375e50b149701316a36023f3
Reviewed-on: https://go-review.googlesource.com/c/sys/+/230478
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org >
2020-04-28 19:36:00 +00:00
Tobias Klauser
29b5707901
unix: add SockaddrUnix tests on darwin and *bsd
...
Change-Id: I65b4c1073208079ea5ac28d21c829ecf28e28d84
Reviewed-on: https://go-review.googlesource.com/c/sys/+/229878
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Matt Layher <mdlayher@gmail.com >
2020-04-27 17:57:16 +00:00
Tobias Klauser
1957bb5e6d
unix: add SockaddrUnix tests on linux
...
Follow the existing examples of the SockaddrTIPC and SockaddrL2TPIP{,6}
tests.
Handling of abstract socket addresses is different on linux than on
other platforms, thus these are currently linux-specific.
Change-Id: I66686d979e1dd317ab7a8a6dd85f98e670ad89b6
Reviewed-on: https://go-review.googlesource.com/c/sys/+/228764
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org >
2020-04-20 16:35:11 +00:00
Tobias Klauser
59c9f1ba88
unix: update Dockerfile to Go 1.14.2
...
Go 1.14.2 fixes golang/go#37621 which allows the Go types to be
generated properly again.
Change-Id: I556c7dd37713d68ef6aad79adc33b2d227e8bbd3
Reviewed-on: https://go-review.googlesource.com/c/sys/+/227678
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
Reviewed-by: Matt Layher <mdlayher@gmail.com >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
TryBot-Result: Gobot Gobot <gobot@golang.org >
2020-04-09 09:22:40 +00:00
Tobias Klauser
e3b113bbe6
unix: add nexthop types and consts
...
Fixes golang/go#38249
Change-Id: Ie8149ac16d09e76d6c5aa4d47edd947a647c381f
Reviewed-on: https://go-review.googlesource.com/c/sys/+/227357
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
Reviewed-by: Matt Layher <mdlayher@gmail.com >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
TryBot-Result: Gobot Gobot <gobot@golang.org >
2020-04-06 15:51:08 +00:00
Tobias Klauser
c3d8025017
unix: update Dockerfile to Linux 5.6, and Go 1.13.9
...
We cannot update to Go 1.14 yet, since cgo code generation for certain
types is broken due to golang/go#37621 .
Change-Id: I7b60d23ff4e79a7bb7fa4f0e0625893e4eff81f1
Reviewed-on: https://go-review.googlesource.com/c/sys/+/226577
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Matt Layher <mdlayher@gmail.com >
2020-03-31 12:40:33 +00:00
Tobias Klauser
9dae0f8f57
unix: add fs-verity consts and types
...
See https://www.kernel.org/doc/html/latest/filesystems/fsverity.html for
details.
Change-Id: I5b02d0ef84f21d05ea3f1ac8e905232733ea3739
Reviewed-on: https://go-review.googlesource.com/c/sys/+/225698
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
2020-03-27 17:32:47 +00:00
Tobias Klauser
85ca7c5b95
unix: allocate signalNameMap with enough space
...
Avoid re-allocations while filling signalNameMap.
Change-Id: I3017e856c2724debccad43324cbe2e60b68d869c
Reviewed-on: https://go-review.googlesource.com/c/sys/+/225017
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
TryBot-Result: Gobot Gobot <gobot@golang.org >
2020-03-23 22:24:14 +00:00
Tobias Klauser
5c8b2ff675
unix: update BPF consts on linux
...
Update the BPF_* consts from include/uapi/linux/bpf.h as of Linux 5.5.
Change-Id: I5098fc9e4fc1fb3e6cc2e2f85a8e65b369b6a81c
Reviewed-on: https://go-review.googlesource.com/c/sys/+/221797
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Matt Layher <mdlayher@gmail.com >
2020-03-02 15:01:41 +00:00
Tobias Klauser
062a44052d
cpu: add mips64x feature detection
...
Follow CL 200579
Change-Id: Ibedd6569bda3d7836ccb77a7746ed0e5df13c633
Reviewed-on: https://go-review.googlesource.com/c/sys/+/221698
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
2020-03-02 08:32:56 +00:00
Tobias Klauser
9197077df8
unix: gofmt after CL 218799
...
CL 218799 wasn't properly gofmt'ed. Also move InotifyInit before Poll so
it matches the position in other syscall_linux_*.go files which
implement InotifyInit using InotifyInit1 (e.g. arm64).
Change-Id: If517ea2450c83ce39919992193592609f7e1e478
Reviewed-on: https://go-review.googlesource.com/c/sys/+/219798
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Matt Layher <mdlayher@gmail.com >
2020-02-17 22:08:22 +00:00
Tobias Klauser
2d4d9931dc
unix: add RTMGRP_* consts from rtnetlink.h
...
Change-Id: I50fe62020e539df0ada577b71e87fb67b7e43973
Reviewed-on: https://go-review.googlesource.com/c/sys/+/219797
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Matt Layher <mdlayher@gmail.com >
2020-02-17 22:08:02 +00:00
Tobias Klauser
d101bd2416
unix: update Dockerfile to Linux 5.5, glibc 2.31, Go 1.13.7
...
Change-Id: I6bcbf93132861fb2896c6884e2c7e1c42672ece4
Reviewed-on: https://go-review.googlesource.com/c/sys/+/217477
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Matt Layher <mdlayher@gmail.com >
2020-02-02 16:47:22 +00:00
Tobias Klauser
34d275377b
unix: correct PtraceIoDesc and define PtraceIoDesc per GOARCH on freebsd
...
CL 179099 introduced ptrace support for freebsd but it seems the
PtraceIoDesc type was not generated by cgo -godefs through mkall.sh
as it contains an uint member. Regenerate the type and adjust
PtraceIoDesc to deal with the type difference on 32-bit vs. 64-bit.
Change-Id: I1ec9662aa8e1b199ebe557387aa27827f23d9d40
Reviewed-on: https://go-review.googlesource.com/c/sys/+/215242
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
2020-01-21 08:24:15 +00:00
Tobias Klauser
655fe14d74
unix: test (*FdSet).Clear in TestFdSet
...
Follow-up for CL 205397 so all *FdSet functionality is tested.
Change-Id: Ieb5dce6ad020ce1252cae7f3fe96ba6bf0069f5e
Reviewed-on: https://go-review.googlesource.com/c/sys/+/215241
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org >
2020-01-20 15:18:20 +00:00
Tobias Klauser
59e60aa80a
cpu: don't read ARM64 registers on Android
...
It seems like on Android we're not allowed in all cases to read the
registers ISAR0, ISAR1 and PFR0 to detect CPU features.
Fixes golang/go#36622
Change-Id: I577bd928a5a4dcd6e908cf059faa15fc0c80e3e5
Reviewed-on: https://go-review.googlesource.com/c/sys/+/215237
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org >
2020-01-17 14:54:32 +00:00
Tobias Klauser
86b910548b
unix: add missing chtmpdir in TestPpoll on openbsd
...
This ensures the the fifos are created in a temporary directory.
Change-Id: I744122207700e77a7a180d4f61336a93f3e5efca
Reviewed-on: https://go-review.googlesource.com/c/sys/+/214479
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
Run-TryBot: Matt Layher <mdlayher@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Matt Layher <mdlayher@gmail.com >
2020-01-13 16:29:24 +00:00
Tobias Klauser
548cf772de
unix: add SysctlClockinfo on dragonfly and freebsd
...
Change-Id: I0d439b5c59c79594c6ecfebe0375971e1344cc09
Reviewed-on: https://go-review.googlesource.com/c/sys/+/213400
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
TryBot-Result: Gobot Gobot <gobot@golang.org >
2020-01-07 16:21:24 +00:00
Tobias Klauser
ef85f5a75d
unix: add Inet4Pktinfo type on solaris
...
Change-Id: I4f18b5d98697120a16b56657a012d7ab5fe1b83c
Reviewed-on: https://go-review.googlesource.com/c/sys/+/213399
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
2020-01-07 14:46:01 +00:00
Tobias Klauser
b016eb3dc9
unix: test UtimesNanoAt on *bsd and solaris
...
Move TestUtimesNanoAt to syscall_unix_test.go. All BSDs and
solaris/illumos provide UtimesNanoAt. The implementations on linux and
darwin are already the same and the type conversions of Timespec members
on aix should no longer be necessary since CL 177838.
Change-Id: If0d03a92b3167da08191b6e98888eec92f27c3c9
Reviewed-on: https://go-review.googlesource.com/c/sys/+/213398
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org >
2020-01-06 16:20:15 +00:00
Tobias Klauser
5f8ca72cd6
unix: don't zero out extra registers on riscv64 syscalls
...
Follow the implementation in package syscall, see CL 204659.
Change-Id: Ib97f86958cbdb0135b7980faf23729543c68d42a
Reviewed-on: https://go-review.googlesource.com/c/sys/+/213397
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Joel Sing <joel@sing.id.au >
2020-01-06 11:46:38 +00:00
Tobias Klauser
a1369afcda
unix: add flags argument in //sys comments for Fstatvfs1 and Statvfs1 on netbsd
...
Otherwise, these functions would not be generated correctly. Follow-up
for CL 209637.
Also regenerate the zsyscall_netbsd_*.go files, causing the definition
of sysctl to move.
Change-Id: I829e8c94a69b6aeb251b46bc4762f2a7bbc45a8e
Reviewed-on: https://go-review.googlesource.com/c/sys/+/212460
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 >
2020-01-03 14:33:44 +00:00
Tobias Klauser
c96a22e43c
unix: add Dup3 on netbsd and openbsd
...
Change-Id: Id871d3d211d6d5896e41b673c7bfe3a1d8e756a6
Reviewed-on: https://go-review.googlesource.com/c/sys/+/212461
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org >
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
2020-01-02 14:19:24 +00:00
Tobias Klauser
04cbcbbfee
unix: correct build tag to define Getdirentries for darwin/arm with Go 1.11
...
Fixes golang/go#36300
Change-Id: I42692b47135870b52a26eb9662ca54648c9cfaf2
Reviewed-on: https://go-review.googlesource.com/c/sys/+/212459
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
Reviewed-by: Keith Randall <khr@golang.org >
2019-12-28 21:39:18 +00:00
Tobias Klauser
5a3cf8467b
unix: compare Stat_t members in TestFstatat
...
TestFstatat occasionally fails on some builders due to mismatching
Stat_t info returned by the calls to Fstatat (most likely due to Atime
changing). Fix the test by just comparing some well known members.
Change-Id: I862957ad9d3632173a97d93692a6c672779ac508
Reviewed-on: https://go-review.googlesource.com/c/sys/+/212417
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
2019-12-23 22:42:16 +00:00
Tobias Klauser
abf886d6f5
unix: unify definition of func fcntl
...
For linux and *bsd, implement func fcntl in fcntl.go instead of
generating it. Implement it using fcntl64Syscall, so SYS_FCNTL64 is used
on 32-bit linux.
For aix, darwin and solaris continue generate func fcntl as before.
Change-Id: I3750b88d1ee5573daaee2b75c369f723fde8834a
Reviewed-on: https://go-review.googlesource.com/c/sys/+/212337
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
2019-12-23 22:40:30 +00:00
Tobias Klauser
ce4227a45e
unix: add Statvfs and Fstatvfs on NetBSD
...
NetBSD replaced statfs with statvfs in NetBSD 3.0. statfs is derived
from BSD4.4, while NetBSD (and Solaris) implement statvfs from POSIX
instead.
Generated and tested on NetBSD 8.0 (amd64). Also tested on NetBSD 7.0 (amd64).
Change-Id: I53738b77815d04c7774a6455b4a31cd4e9571f7b
Reviewed-on: https://go-review.googlesource.com/c/sys/+/209637
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Benny Siegert <bsiegert@gmail.com >
2019-12-04 07:23:24 +00:00
Tobias Klauser
85b82a3add
cpu: support reading arm64 CPU feature registers
...
This allows to detect ARM64 CPU features on non-Linux systems. On Linux,
this is used in case /proc/self/auxv cannot be read.
Change-Id: I67d55e989f2beda0c05a97ca5e55781840a8e01c
Reviewed-on: https://go-review.googlesource.com/c/sys/+/209478
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
2019-12-04 07:21:56 +00:00
Tobias Klauser
bd437916bb
unix: check number of ready file descriptors in TestPselect
...
Like in TestSelect, check the number of ready file descriptors returned
by Pselect.
Change-Id: I4a64720092132c5ba432d6d1274df8c68bb5b6bf
Reviewed-on: https://go-review.googlesource.com/c/sys/+/207862
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-20 15:59:48 +00:00
Tobias Klauser
76d669a226
unix: don't fail TestSelect on EINTR from Select
...
Change-Id: Ie162966c830ffd86947cf4f04532a7f6741a5587
Reviewed-on: https://go-review.googlesource.com/c/sys/+/207861
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-20 15:59:35 +00:00
Tobias Klauser
f068ffe820
unix: use same TestSelect on all Unices
...
Also change t.Error messages to use "got foo, expected bar" notation.
Change-Id: Ia0b452f96b08cbb69a0b64cc2a467b5cf94e72da
Reviewed-on: https://go-review.googlesource.com/c/sys/+/207858
Reviewed-by: Ian Lance Taylor <iant@golang.org >
2019-11-19 19:55:28 +00:00
Tobias Klauser
e882bf8e40
unix: fix EINTR check in TestPselect
...
err == EINTR needs to be checked before err != nil for the interrupted
syscall to be retried properly.
Follow-up for CL 207284
Updates golang/go#35555
Change-Id: I76d569058b7985ec51f07909d86807a8b4911772
Reviewed-on: https://go-review.googlesource.com/c/sys/+/207292
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-19 06:07:38 +00:00
Tobias Klauser
2f86c98f34
unix: don't fail TestPselect on EINTR from Pselect
...
Updates golang/go#35555
Change-Id: I3efb010c8edf92a75941c6b7ec749665235020d8
Reviewed-on: https://go-review.googlesource.com/c/sys/+/207284
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org >
2019-11-18 07:38:50 +00:00
Tobias Klauser
6254a7c3ca
unix: fix EINTR check in TestClockNanosleep
...
err == EINTR needs to be checked before err != nil for the interrupted
syscall to be retried properly.
Follow-up for CL 207285
Updates golang/go#35622
Change-Id: I0f8c1a75eb96e11aaba284eb75716db044257cbd
Reviewed-on: https://go-review.googlesource.com/c/sys/+/207290
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org >
2019-11-18 01:35:47 +00:00
Tobias Klauser
81af7394a2
unix: don't fail TestClockNanosleep on EINTR from ClockNanosleep
...
Continue the test and log the time slept in case of EINTR.
Fixes golang/go#35622
Change-Id: I4444b2500a5ae492aad27f3bcbc5f77ef3944447
Reviewed-on: https://go-review.googlesource.com/c/sys/+/207285
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org >
Reviewed-by: Ian Lance Taylor <iant@golang.org >
2019-11-17 21:15:29 +00:00
Tobias Klauser
52ab431487
unix: fix EpollEvent padding on mips64{,le}
...
Like on other 64-bit GOARCHes, EpollEvent needs padding before Fd for
mips64 and mips64le.
Change-Id: I934368ba22ef7bf3a25949649613c2a03928bf83
Reviewed-on: https://go-review.googlesource.com/c/sys/+/207278
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-15 15:19:21 +00:00
Tobias Klauser
4c7a9d0fe0
unix: check correct CPU for being enabled in old mask in TestSchedSetaffinity
...
When checking the old affinity mask with the fix introduced in CL
137675, the wrong CPU (5 instead of 1) is checked. Correct this and also
move the call to SchedGetaffinity closer to the SchedSetaffinity call in
order to reduce the time window for CPUs to go offline.
Updates golang/go#27875
Fixes golang/go#35184
Change-Id: Ie50320c82d1334aa26764281253dc9dde066a730
Reviewed-on: https://go-review.googlesource.com/c/sys/+/206863
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com >
TryBot-Result: Gobot Gobot <gobot@golang.org >
Reviewed-by: Bryan C. Mills <bcmills@google.com >
2019-11-13 16:50:36 +00:00
Tobias Klauser
344fec8e55
cpu: don't redeclare doinit on ppc64le
...
Follow-up fix for CL 206859. Also order the +build line alphabetically.
Change-Id: I568c8b3ee03161d4341c151e4ec7150cade51077
Reviewed-on: https://go-review.googlesource.com/c/sys/+/206864
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 16:50:28 +00:00
Tobias Klauser
fee6b63275
unix: accept time.Now()±1 as valid in TestTime
...
Fixes golang/go#33200
Change-Id: I7e6e62f09174f0b214e7d021a31f1ad2166f9db5
Reviewed-on: https://go-review.googlesource.com/c/sys/+/206861
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-13 15:49:46 +00:00
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