Change the two calls to signalstack(nil) to inline the code
instead (it's two lines).
Change-Id: Ie92a05494f924f279e40ac159f1b677fda18f281
Reviewed-on: https://go-review.googlesource.com/29854
Run-TryBot: Ian Lance Taylor <iant@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
// At this point all signals are blocked, so there is no race.
//go:nosplit
func netbsdMstart() {
- signalstack(nil)
+ st := stackt{ss_flags: _SS_DISABLE}
+ sigaltstack(&st, nil)
mstart()
}
//go:nosplit
func unminitSignals() {
if getg().m.newSigstack {
- signalstack(nil)
+ st := stackt{ss_flags: _SS_DISABLE}
+ sigaltstack(&st, nil)
}
}
}
// signalstack sets the current thread's alternate signal stack to s.
-// If s is nil, the current thread's alternate signal stack is disabled.
//go:nosplit
func signalstack(s *stack) {
- var st stackt
- if s == nil {
- st.ss_flags = _SS_DISABLE
- } else {
- setSignalstackSP(&st, s.lo)
- st.ss_size = s.hi - s.lo
- st.ss_flags = 0
- }
+ st := stackt{ss_size: s.hi - s.lo}
+ setSignalstackSP(&st, s.lo)
sigaltstack(&st, nil)
}