diff options
author | Russ Cox <rsc@golang.org> | 2014-11-11 17:08:54 -0500 |
---|---|---|
committer | Russ Cox <rsc@golang.org> | 2014-11-11 17:08:54 -0500 |
commit | cf05582e8222d927ceb9dde766a57af4769c6343 (patch) | |
tree | 6c948ca9e9bd61ea992b5589bbd5c990bb6fa94e /src/runtime/os_linux.go | |
parent | 2f5cc193d9daa4c45f45f6c23fd5990d050bd9ec (diff) | |
download | go-cf05582e8222d927ceb9dde766a57af4769c6343.tar.gz |
[dev.cc] runtime: convert operating system support code from C to Go
The conversion was done with an automated tool and then
modified only as necessary to make it compile and run.
[This CL is part of the removal of C code from package runtime.
See golang.org/s/dev.cc for an overview.]
LGTM=r
R=r
CC=austin, dvyukov, golang-codereviews, iant, khr
https://codereview.appspot.com/174830044
Diffstat (limited to 'src/runtime/os_linux.go')
-rw-r--r-- | src/runtime/os_linux.go | 26 |
1 files changed, 21 insertions, 5 deletions
diff --git a/src/runtime/os_linux.go b/src/runtime/os_linux.go index 41123ad57..113219aab 100644 --- a/src/runtime/os_linux.go +++ b/src/runtime/os_linux.go @@ -6,12 +6,28 @@ package runtime import "unsafe" +//go:noescape func futex(addr unsafe.Pointer, op int32, val uint32, ts, addr2 unsafe.Pointer, val3 uint32) int32 + +//go:noescape func clone(flags int32, stk, mm, gg, fn unsafe.Pointer) int32 -func rt_sigaction(sig uintptr, new, old unsafe.Pointer, size uintptr) int32 -func sigaltstack(new, old unsafe.Pointer) -func setitimer(mode int32, new, old unsafe.Pointer) -func rtsigprocmask(sig int32, new, old unsafe.Pointer, size int32) + +//go:noescape +func rt_sigaction(sig uintptr, new, old *sigactiont, size uintptr) int32 + +//go:noescape +func sigaltstack(new, old *sigaltstackt) + +//go:noescape +func setitimer(mode int32, new, old *itimerval) + +//go:noescape +func rtsigprocmask(sig uint32, new, old *sigset, size int32) + +//go:noescape func getrlimit(kind int32, limit unsafe.Pointer) int32 -func raise(sig int32) +func raise(sig uint32) + +//go:noescape func sched_getaffinity(pid, len uintptr, buf *uintptr) int32 +func osyield() |