mirror of
https://github.com/golang/go
synced 2024-10-14 03:43:28 +00:00
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:
parent
d8220ac32f
commit
e0e1ce9888
|
@ -16,10 +16,11 @@ package runtime
|
||||||
|
|
||||||
/*
|
/*
|
||||||
#include <sys/types.h>
|
#include <sys/types.h>
|
||||||
|
#include <unistd.h>
|
||||||
|
#include <fcntl.h>
|
||||||
#include <sys/time.h>
|
#include <sys/time.h>
|
||||||
#include <signal.h>
|
#include <signal.h>
|
||||||
#include <errno.h>
|
#include <errno.h>
|
||||||
#define _WANT_FREEBSD11_KEVENT 1
|
|
||||||
#include <sys/event.h>
|
#include <sys/event.h>
|
||||||
#include <sys/mman.h>
|
#include <sys/mman.h>
|
||||||
#include <sys/ucontext.h>
|
#include <sys/ucontext.h>
|
||||||
|
@ -45,9 +46,10 @@ const (
|
||||||
)
|
)
|
||||||
|
|
||||||
const (
|
const (
|
||||||
EINTR = C.EINTR
|
EINTR = C.EINTR
|
||||||
EFAULT = C.EFAULT
|
EFAULT = C.EFAULT
|
||||||
EAGAIN = C.EAGAIN
|
EAGAIN = C.EAGAIN
|
||||||
|
ETIMEDOUT = C.ETIMEDOUT
|
||||||
|
|
||||||
O_NONBLOCK = C.O_NONBLOCK
|
O_NONBLOCK = C.O_NONBLOCK
|
||||||
O_CLOEXEC = C.O_CLOEXEC
|
O_CLOEXEC = C.O_CLOEXEC
|
||||||
|
@ -155,7 +157,7 @@ type Itimerval C.struct_itimerval
|
||||||
|
|
||||||
type Umtx_time C.struct__umtx_time
|
type Umtx_time C.struct__umtx_time
|
||||||
|
|
||||||
type Kevent C.struct_kevent_freebsd11
|
type KeventT C.struct_kevent
|
||||||
|
|
||||||
type bintime C.struct_bintime
|
type bintime C.struct_bintime
|
||||||
type vdsoTimehands C.struct_vdso_timehands
|
type vdsoTimehands C.struct_vdso_timehands
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
// created by cgo -cdefs and then converted to Go
|
// Code generated by cgo, then manually converted into appropriate naming and code
|
||||||
// cgo -cdefs defs_freebsd.go
|
// for the Go runtime.
|
||||||
|
// go tool cgo -godefs defs_freebsd.go
|
||||||
|
|
||||||
package runtime
|
package runtime
|
||||||
|
|
||||||
|
@ -229,8 +230,9 @@ type keventt struct {
|
||||||
filter int16
|
filter int16
|
||||||
flags uint16
|
flags uint16
|
||||||
fflags uint32
|
fflags uint32
|
||||||
data int32
|
data int64
|
||||||
udata *byte
|
udata *byte
|
||||||
|
ext [4]uint64
|
||||||
}
|
}
|
||||||
|
|
||||||
type bintime struct {
|
type bintime struct {
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
// created by cgo -cdefs and then converted to Go
|
// Code generated by cgo, then manually converted into appropriate naming and code
|
||||||
// cgo -cdefs defs_freebsd.go
|
// for the Go runtime.
|
||||||
|
// go tool cgo -godefs defs_freebsd.go
|
||||||
|
|
||||||
package runtime
|
package runtime
|
||||||
|
|
||||||
|
@ -242,6 +243,7 @@ type keventt struct {
|
||||||
fflags uint32
|
fflags uint32
|
||||||
data int64
|
data int64
|
||||||
udata *byte
|
udata *byte
|
||||||
|
ext [4]uint64
|
||||||
}
|
}
|
||||||
|
|
||||||
type bintime struct {
|
type bintime struct {
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
// created by cgo -cdefs and then converted to Go
|
// Code generated by cgo, then manually converted into appropriate naming and code
|
||||||
// cgo -cdefs defs_freebsd.go
|
// for the Go runtime.
|
||||||
|
// go tool cgo -godefs defs_freebsd.go
|
||||||
|
|
||||||
package runtime
|
package runtime
|
||||||
|
|
||||||
|
@ -198,12 +199,15 @@ type umtx_time struct {
|
||||||
}
|
}
|
||||||
|
|
||||||
type keventt struct {
|
type keventt struct {
|
||||||
ident uint32
|
ident uint32
|
||||||
filter int16
|
filter int16
|
||||||
flags uint16
|
flags uint16
|
||||||
fflags uint32
|
fflags uint32
|
||||||
data int32
|
pad_cgo_0 [4]byte
|
||||||
udata *byte
|
data int64
|
||||||
|
udata *byte
|
||||||
|
pad_cgo_1 [4]byte
|
||||||
|
ext [4]uint64
|
||||||
}
|
}
|
||||||
|
|
||||||
type bintime struct {
|
type bintime struct {
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
// created by cgo -cdefs and then converted to Go
|
// Code generated by cgo, then manually converted into appropriate naming and code
|
||||||
// cgo -cdefs defs_freebsd.go
|
// for the Go runtime.
|
||||||
|
// go tool cgo -godefs defs_freebsd.go
|
||||||
|
|
||||||
package runtime
|
package runtime
|
||||||
|
|
||||||
|
@ -226,6 +227,7 @@ type keventt struct {
|
||||||
fflags uint32
|
fflags uint32
|
||||||
data int64
|
data int64
|
||||||
udata *byte
|
udata *byte
|
||||||
|
ext [4]uint64
|
||||||
}
|
}
|
||||||
|
|
||||||
type bintime struct {
|
type bintime struct {
|
||||||
|
|
|
@ -34,7 +34,6 @@
|
||||||
#define SYS_sched_yield 331
|
#define SYS_sched_yield 331
|
||||||
#define SYS_sigprocmask 340
|
#define SYS_sigprocmask 340
|
||||||
#define SYS_kqueue 362
|
#define SYS_kqueue 362
|
||||||
#define SYS_kevent 363
|
|
||||||
#define SYS_sigaction 416
|
#define SYS_sigaction 416
|
||||||
#define SYS_sigreturn 417
|
#define SYS_sigreturn 417
|
||||||
#define SYS_thr_exit 431
|
#define SYS_thr_exit 431
|
||||||
|
@ -45,6 +44,7 @@
|
||||||
#define SYS_mmap 477
|
#define SYS_mmap 477
|
||||||
#define SYS_cpuset_getaffinity 487
|
#define SYS_cpuset_getaffinity 487
|
||||||
#define SYS_pipe2 542
|
#define SYS_pipe2 542
|
||||||
|
#define SYS_kevent 560
|
||||||
|
|
||||||
TEXT runtime·sys_umtx_op(SB),NOSPLIT,$-4
|
TEXT runtime·sys_umtx_op(SB),NOSPLIT,$-4
|
||||||
MOVL $SYS__umtx_op, AX
|
MOVL $SYS__umtx_op, AX
|
||||||
|
|
|
@ -36,7 +36,6 @@
|
||||||
#define SYS_sched_yield 331
|
#define SYS_sched_yield 331
|
||||||
#define SYS_sigprocmask 340
|
#define SYS_sigprocmask 340
|
||||||
#define SYS_kqueue 362
|
#define SYS_kqueue 362
|
||||||
#define SYS_kevent 363
|
|
||||||
#define SYS_sigaction 416
|
#define SYS_sigaction 416
|
||||||
#define SYS_thr_exit 431
|
#define SYS_thr_exit 431
|
||||||
#define SYS_thr_self 432
|
#define SYS_thr_self 432
|
||||||
|
@ -46,6 +45,7 @@
|
||||||
#define SYS_mmap 477
|
#define SYS_mmap 477
|
||||||
#define SYS_cpuset_getaffinity 487
|
#define SYS_cpuset_getaffinity 487
|
||||||
#define SYS_pipe2 542
|
#define SYS_pipe2 542
|
||||||
|
#define SYS_kevent 560
|
||||||
|
|
||||||
TEXT runtime·sys_umtx_op(SB),NOSPLIT,$0
|
TEXT runtime·sys_umtx_op(SB),NOSPLIT,$0
|
||||||
MOVQ addr+0(FP), DI
|
MOVQ addr+0(FP), DI
|
||||||
|
|
|
@ -31,7 +31,6 @@
|
||||||
#define SYS_sched_yield (SYS_BASE + 331)
|
#define SYS_sched_yield (SYS_BASE + 331)
|
||||||
#define SYS_sigprocmask (SYS_BASE + 340)
|
#define SYS_sigprocmask (SYS_BASE + 340)
|
||||||
#define SYS_kqueue (SYS_BASE + 362)
|
#define SYS_kqueue (SYS_BASE + 362)
|
||||||
#define SYS_kevent (SYS_BASE + 363)
|
|
||||||
#define SYS_sigaction (SYS_BASE + 416)
|
#define SYS_sigaction (SYS_BASE + 416)
|
||||||
#define SYS_thr_exit (SYS_BASE + 431)
|
#define SYS_thr_exit (SYS_BASE + 431)
|
||||||
#define SYS_thr_self (SYS_BASE + 432)
|
#define SYS_thr_self (SYS_BASE + 432)
|
||||||
|
@ -41,6 +40,7 @@
|
||||||
#define SYS_mmap (SYS_BASE + 477)
|
#define SYS_mmap (SYS_BASE + 477)
|
||||||
#define SYS_cpuset_getaffinity (SYS_BASE + 487)
|
#define SYS_cpuset_getaffinity (SYS_BASE + 487)
|
||||||
#define SYS_pipe2 (SYS_BASE + 542)
|
#define SYS_pipe2 (SYS_BASE + 542)
|
||||||
|
#define SYS_kevent (SYS_BASE + 560)
|
||||||
|
|
||||||
TEXT runtime·sys_umtx_op(SB),NOSPLIT,$0
|
TEXT runtime·sys_umtx_op(SB),NOSPLIT,$0
|
||||||
MOVW addr+0(FP), R0
|
MOVW addr+0(FP), R0
|
||||||
|
|
|
@ -38,7 +38,6 @@
|
||||||
#define SYS_sched_yield 331
|
#define SYS_sched_yield 331
|
||||||
#define SYS_sigprocmask 340
|
#define SYS_sigprocmask 340
|
||||||
#define SYS_kqueue 362
|
#define SYS_kqueue 362
|
||||||
#define SYS_kevent 363
|
|
||||||
#define SYS_sigaction 416
|
#define SYS_sigaction 416
|
||||||
#define SYS_thr_exit 431
|
#define SYS_thr_exit 431
|
||||||
#define SYS_thr_self 432
|
#define SYS_thr_self 432
|
||||||
|
@ -48,6 +47,7 @@
|
||||||
#define SYS_mmap 477
|
#define SYS_mmap 477
|
||||||
#define SYS_cpuset_getaffinity 487
|
#define SYS_cpuset_getaffinity 487
|
||||||
#define SYS_pipe2 542
|
#define SYS_pipe2 542
|
||||||
|
#define SYS_kevent 560
|
||||||
|
|
||||||
TEXT emptyfunc<>(SB),0,$0-0
|
TEXT emptyfunc<>(SB),0,$0-0
|
||||||
RET
|
RET
|
||||||
|
|
Loading…
Reference in a new issue