blob: 34c970d6d2d337d065450a8a51647ab791e282fc [file] [log] [blame]
// Copyright 2013 The Go Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
//go:build dragonfly || freebsd || linux
// +build dragonfly freebsd linux
package runtime
var Futexwakeup = futexwakeup
//go:nosplit
func Futexsleep(addr *uint32, val uint32, ns int64) {
// Temporarily disable preemption so that a preemption signal
// doesn't interrupt the system call.
poff := debug.asyncpreemptoff
debug.asyncpreemptoff = 1
futexsleep(addr, val, ns)
debug.asyncpreemptoff = poff
}