mirror of
https://github.com/golang/go.git
synced 2025-12-08 06:10:04 +00:00
runtime: mark osyield nosplit on OpenBSD
osyield is called in code paths that are not allowed to split stack, e.g. casgstatus called from entersyscall/exitsyscall. It is nosplit on all other platforms. Mark it nosplit on OpenBSD as well. Change-Id: I3fed5d7f58b3d50610beca6eed2c7e902b8ec52c Reviewed-on: https://go-review.googlesource.com/c/go/+/319969 Trust: Cherry Mui <cherryyz@google.com> Run-TryBot: Cherry Mui <cherryyz@google.com> TryBot-Result: Go Bot <gobot@golang.org> Reviewed-by: Joel Sing <joel@sing.id.au>
This commit is contained in:
parent
3d324f127d
commit
02699f810a
1 changed files with 1 additions and 0 deletions
|
|
@ -23,6 +23,7 @@ func thrwakeup(ident uintptr, n int32) int32 {
|
||||||
}
|
}
|
||||||
func thrwakeup_trampoline()
|
func thrwakeup_trampoline()
|
||||||
|
|
||||||
|
//go:nosplit
|
||||||
func osyield() {
|
func osyield() {
|
||||||
libcCall(unsafe.Pointer(funcPC(sched_yield_trampoline)), unsafe.Pointer(nil))
|
libcCall(unsafe.Pointer(funcPC(sched_yield_trampoline)), unsafe.Pointer(nil))
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue