diff options
| author | Dmitriy Vyukov <dvyukov@google.com> | 2013-07-22 23:02:27 +0400 |
|---|---|---|
| committer | Dmitriy Vyukov <dvyukov@google.com> | 2013-07-22 23:02:27 +0400 |
| commit | e97d677b4eaa6db4d70ae1d855d2cc5a4b0fdeff (patch) | |
| tree | 5574b0886619a085bd84ff0fa70b08abd51fc6f6 /src/pkg/runtime/sigqueue.goc | |
| parent | 9fe4a9ecdd674efafc173f3c7e99f7b34a6c544a (diff) | |
| download | go-e97d677b4eaa6db4d70ae1d855d2cc5a4b0fdeff.tar.xz | |
runtime: introduce notetsleepg function
notetsleepg is the same as notetsleep, but is called on user g.
It includes entersyscall/exitsyscall and will help to avoid
split stack functions in syscall status.
R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/11681043
Diffstat (limited to 'src/pkg/runtime/sigqueue.goc')
| -rw-r--r-- | src/pkg/runtime/sigqueue.goc | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/src/pkg/runtime/sigqueue.goc b/src/pkg/runtime/sigqueue.goc index 9bfab3bfae..e430e2103d 100644 --- a/src/pkg/runtime/sigqueue.goc +++ b/src/pkg/runtime/sigqueue.goc @@ -106,9 +106,7 @@ func signal_recv() (m uint32) { new = HASWAITER; if(runtime·cas(&sig.state, old, new)) { if (new == HASWAITER) { - runtime·entersyscallblock(); - runtime·notesleep(&sig); - runtime·exitsyscall(); + runtime·notetsleepg(&sig, -1); runtime·noteclear(&sig); } break; |
