runtime: switch FreeBSD to use the non-COMPAT_FREEBSD11 version of the kevent syscall

Update #53280

Change-Id: I1c8d4510fbe8bdfe9a41575bde54ea2fbf6b67e9
Reviewed-on: https://go-review.googlesource.com/c/go/+/413174
Reviewed-by: Dmitri Goutnik <dgoutnik@gmail.com>
TryBot-Result: Gopher Robot <gobot@golang.org>
Reviewed-by: Bryan Mills <bcmills@google.com>
Reviewed-by: Ian Lance Taylor <iant@google.com>
Run-TryBot: Yuval Pavel Zholkover <paulzhol@gmail.com>
This commit is contained in:
Yuval Pavel Zholkover 2022-06-18 22:02:14 +03:00 committed by Meng Zhuo
parent d8220ac32f
commit e0e1ce9888
9 changed files with 36 additions and 24 deletions

View file

@ -16,10 +16,11 @@ package runtime
/*
#include <sys/types.h>
#include <unistd.h>
#include <fcntl.h>
#include <sys/time.h>
#include <signal.h>
#include <errno.h>
#define _WANT_FREEBSD11_KEVENT 1
#include <sys/event.h>
#include <sys/mman.h>
#include <sys/ucontext.h>
@ -45,9 +46,10 @@ const (
)
const (
EINTR = C.EINTR
EFAULT = C.EFAULT
EAGAIN = C.EAGAIN
EINTR = C.EINTR
EFAULT = C.EFAULT
EAGAIN = C.EAGAIN
ETIMEDOUT = C.ETIMEDOUT
O_NONBLOCK = C.O_NONBLOCK
O_CLOEXEC = C.O_CLOEXEC
@ -155,7 +157,7 @@ type Itimerval C.struct_itimerval
type Umtx_time C.struct__umtx_time
type Kevent C.struct_kevent_freebsd11
type KeventT C.struct_kevent
type bintime C.struct_bintime
type vdsoTimehands C.struct_vdso_timehands

View file

@ -1,5 +1,6 @@
// created by cgo -cdefs and then converted to Go
// cgo -cdefs defs_freebsd.go
// Code generated by cgo, then manually converted into appropriate naming and code
// for the Go runtime.
// go tool cgo -godefs defs_freebsd.go
package runtime
@ -229,8 +230,9 @@ type keventt struct {
filter int16
flags uint16
fflags uint32
data int32
data int64
udata *byte
ext [4]uint64
}
type bintime struct {

View file

@ -1,5 +1,6 @@
// created by cgo -cdefs and then converted to Go
// cgo -cdefs defs_freebsd.go
// Code generated by cgo, then manually converted into appropriate naming and code
// for the Go runtime.
// go tool cgo -godefs defs_freebsd.go
package runtime
@ -242,6 +243,7 @@ type keventt struct {
fflags uint32
data int64
udata *byte
ext [4]uint64
}
type bintime struct {

View file

@ -1,5 +1,6 @@
// created by cgo -cdefs and then converted to Go
// cgo -cdefs defs_freebsd.go
// Code generated by cgo, then manually converted into appropriate naming and code
// for the Go runtime.
// go tool cgo -godefs defs_freebsd.go
package runtime
@ -198,12 +199,15 @@ type umtx_time struct {
}
type keventt struct {
ident uint32
filter int16
flags uint16
fflags uint32
data int32
udata *byte
ident uint32
filter int16
flags uint16
fflags uint32
pad_cgo_0 [4]byte
data int64
udata *byte
pad_cgo_1 [4]byte
ext [4]uint64
}
type bintime struct {

View file

@ -1,5 +1,6 @@
// created by cgo -cdefs and then converted to Go
// cgo -cdefs defs_freebsd.go
// Code generated by cgo, then manually converted into appropriate naming and code
// for the Go runtime.
// go tool cgo -godefs defs_freebsd.go
package runtime
@ -226,6 +227,7 @@ type keventt struct {
fflags uint32
data int64
udata *byte
ext [4]uint64
}
type bintime struct {

View file

@ -34,7 +34,6 @@
#define SYS_sched_yield 331
#define SYS_sigprocmask 340
#define SYS_kqueue 362
#define SYS_kevent 363
#define SYS_sigaction 416
#define SYS_sigreturn 417
#define SYS_thr_exit 431
@ -45,6 +44,7 @@
#define SYS_mmap 477
#define SYS_cpuset_getaffinity 487
#define SYS_pipe2 542
#define SYS_kevent 560
TEXT runtime·sys_umtx_op(SB),NOSPLIT,$-4
MOVL $SYS__umtx_op, AX

View file

@ -36,7 +36,6 @@
#define SYS_sched_yield 331
#define SYS_sigprocmask 340
#define SYS_kqueue 362
#define SYS_kevent 363
#define SYS_sigaction 416
#define SYS_thr_exit 431
#define SYS_thr_self 432
@ -46,6 +45,7 @@
#define SYS_mmap 477
#define SYS_cpuset_getaffinity 487
#define SYS_pipe2 542
#define SYS_kevent 560
TEXT runtime·sys_umtx_op(SB),NOSPLIT,$0
MOVQ addr+0(FP), DI

View file

@ -31,7 +31,6 @@
#define SYS_sched_yield (SYS_BASE + 331)
#define SYS_sigprocmask (SYS_BASE + 340)
#define SYS_kqueue (SYS_BASE + 362)
#define SYS_kevent (SYS_BASE + 363)
#define SYS_sigaction (SYS_BASE + 416)
#define SYS_thr_exit (SYS_BASE + 431)
#define SYS_thr_self (SYS_BASE + 432)
@ -41,6 +40,7 @@
#define SYS_mmap (SYS_BASE + 477)
#define SYS_cpuset_getaffinity (SYS_BASE + 487)
#define SYS_pipe2 (SYS_BASE + 542)
#define SYS_kevent (SYS_BASE + 560)
TEXT runtime·sys_umtx_op(SB),NOSPLIT,$0
MOVW addr+0(FP), R0

View file

@ -38,7 +38,6 @@
#define SYS_sched_yield 331
#define SYS_sigprocmask 340
#define SYS_kqueue 362
#define SYS_kevent 363
#define SYS_sigaction 416
#define SYS_thr_exit 431
#define SYS_thr_self 432
@ -48,6 +47,7 @@
#define SYS_mmap 477
#define SYS_cpuset_getaffinity 487
#define SYS_pipe2 542
#define SYS_kevent 560
TEXT emptyfunc<>(SB),0,$0-0
RET