1
0
mirror of https://github.com/golang/go synced 2024-11-20 06:44:40 -07:00
go/src/runtime
Austin Clements 675eb72c28 runtime: run libc SIGSETXID and SIGCANCEL handlers on signal stack
These signals are used by glibc to broadcast setuid/setgid to all
threads and to send pthread cancellations.  Unlike other signals, the
Go runtime does not intercept these because they must invoke the libc
handlers (see issues #3871 and #6997).  However, because 1) these
signals may be issued asynchronously by a thread running C code to
another thread running Go code and 2) glibc does not set SA_ONSTACK
for its handlers, glibc's signal handler may be run on a Go stack.
Signal frames range from 1.5K on amd64 to many kilobytes on ppc64, so
this may overflow the Go stack and corrupt heap (or other stack) data.

Fix this by ensuring that these signal handlers have the SA_ONSTACK
flag (but not otherwise taking over the handler).

This has been a problem since Go 1.1, but it's likely that people
haven't encountered it because it only affects setuid/setgid and
pthread_cancel.

Fixes #9600.

Change-Id: I6cf5f5c2d3aa48998d632f61f1ddc2778dcfd300
Reviewed-on: https://go-review.googlesource.com/1887
Reviewed-by: Ian Lance Taylor <iant@golang.org>
2014-12-23 01:33:36 +00:00
..
cgo runtime/cgo: guard against redefinition of PTHREAD_KEYS_MAX 2014-12-18 21:23:25 +00:00
debug runtime: gofmt 2014-12-16 06:16:00 +00:00
pprof [dev.cc] runtime: convert scheduler from C to Go 2014-11-11 17:08:33 -05:00
race runtime: fix atomic operations on non-heap addresses 2014-11-20 09:51:02 -05:00
alg.go runtime: a better fallback hash 2014-12-22 22:41:01 +00:00
append_test.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
arch1_386.go [dev.cc] runtime: generate GOOS- and GOARCH-specific files with go generate 2014-11-18 12:07:50 -05:00
arch1_amd64.go [dev.cc] runtime: generate GOOS- and GOARCH-specific files with go generate 2014-11-18 12:07:50 -05:00
arch1_amd64p32.go [dev.cc] runtime: convert nacl support to Go 2014-11-21 10:22:18 -05:00
arch1_arm.go [dev.cc] runtime: generate GOOS- and GOARCH-specific files with go generate 2014-11-18 12:07:50 -05:00
arch1_ppc64.go all: power64 is now ppc64 2014-12-05 19:13:20 -05:00
arch1_ppc64le.go all: power64 is now ppc64 2014-12-05 19:13:20 -05:00
arch_386.go runtime: remove duplicated Go constants 2014-09-16 10:22:15 -04:00
arch_amd64.go runtime: remove duplicated Go constants 2014-09-16 10:22:15 -04:00
arch_amd64p32.go runtime: remove duplicated Go constants 2014-09-16 10:22:15 -04:00
arch_arm.go runtime: remove duplicated Go constants 2014-09-16 10:22:15 -04:00
arch_ppc64.go all: power64 is now ppc64 2014-12-05 19:13:20 -05:00
arch_ppc64le.go all: power64 is now ppc64 2014-12-05 19:13:20 -05:00
asm_386.s runtime: faster aeshash implementation 2014-12-11 05:23:00 +00:00
asm_amd64.s runtime: faster aeshash implementation 2014-12-11 05:23:00 +00:00
asm_amd64p32.s [dev.garbage] all: merge dev.cc (493ad916c3b1) into dev.garbage 2014-11-24 12:07:11 -05:00
asm_arm.s [dev.garbage] runtime: add prefetcht0, prefetcht1, prefetcht2, prefetcht3, prefetchnta for GC 2014-11-21 15:57:10 -05:00
asm_ppc64x.s all: merge dev.garbage (d1238958d4ae) into default branch 2014-12-05 20:34:45 -05:00
asm.s [dev.cc] runtime: convert assembly files for C to Go transition 2014-11-11 17:06:22 -05:00
atomic_386.go [dev.cc] runtime: convert arch-specific .c and .h files to Go 2014-11-11 17:09:09 -05:00
atomic_amd64x.go [dev.cc] runtime: convert arch-specific .c and .h files to Go 2014-11-11 17:09:09 -05:00
atomic_arm.go [dev.cc] runtime: delete scalararg, ptrarg; rename onM to systemstack 2014-11-12 14:54:31 -05:00
atomic_ppc64x.go all: power64 is now ppc64 2014-12-05 19:13:20 -05:00
atomic_ppc64x.s all: power64 is now ppc64 2014-12-05 19:13:20 -05:00
cgo.go [dev.cc] runtime/cgo: convert from C to Go 2014-11-11 17:05:37 -05:00
cgocall.go [dev.cc] runtime: delete scalararg, ptrarg; rename onM to systemstack 2014-11-12 14:54:31 -05:00
cgocall.h build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
cgocallback.go runtime: fix _cgo_allocate(0) 2014-10-07 16:27:40 -04:00
chan1.go [dev.cc] runtime: convert header files to Go 2014-11-11 17:05:19 -05:00
chan_test.go runtime: use doubly-linked lists for channel send/recv queues. 2014-12-08 19:20:12 +00:00
chan.go runtime: use doubly-linked lists for channel send/recv queues. 2014-12-08 19:20:12 +00:00
closure_test.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
compiler.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
complex_test.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
complex.go [dev.cc] runtime: convert basic library routines from C to Go 2014-11-11 17:07:06 -05:00
cpuprof.go runtime: simplify cpuprof hash calculation 2014-12-19 02:50:40 +00:00
cputicks.go [dev.cc] runtime: convert freebsd to Go 2014-11-11 23:00:29 -05:00
crash_cgo_test.go runtime: make TestCgoExternalThreadPanic run on windows 2014-10-30 10:24:37 +11:00
crash_test.go runtime: fix unrecovered panic on external thread 2014-10-28 21:53:09 -04:00
debug.go [dev.cc] runtime: delete scalararg, ptrarg; rename onM to systemstack 2014-11-12 14:54:31 -05:00
defs1_linux.go build: merge the great pkg/ rename into dev.power64 2014-10-22 13:25:37 -04:00
defs1_netbsd_386.go [dev.cc] runtime: convert netbsd/386 port to Go 2014-11-22 22:09:11 +11:00
defs1_netbsd_amd64.go [dev.cc] runtime: convert netbsd/amd64 port to Go 2014-11-22 16:05:31 +11:00
defs1_netbsd_arm.go runtime: convert netbsd/arm to Go 2014-12-05 16:17:09 -05:00
defs1_solaris_amd64.go [dev.cc] runtime: convert Solaris port to Go 2014-11-13 16:07:10 +01:00
defs2_linux.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
defs3_linux.go all: power64 is now ppc64 2014-12-05 19:13:20 -05:00
defs_arm_linux.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
defs_darwin_386.go [dev.cc] runtime: convert defs_$GOOS_$GOARCH.h to Go 2014-11-11 17:07:37 -05:00
defs_darwin_amd64.go [dev.cc] runtime: convert defs_$GOOS_$GOARCH.h to Go 2014-11-11 17:07:37 -05:00
defs_darwin.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
defs_dragonfly_386.go [dev.cc] runtime: convert dragonfly/386 port to Go 2014-11-25 03:15:11 +11:00
defs_dragonfly_amd64.go [dev.cc] runtime: change set_sec to take int64 2014-11-14 14:50:00 -05:00
defs_dragonfly.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
defs_freebsd_386.go [dev.cc] runtime: change set_sec to take int64 2014-11-14 14:50:00 -05:00
defs_freebsd_amd64.go [dev.cc] runtime: change set_sec to take int64 2014-11-14 14:50:00 -05:00
defs_freebsd_arm.go [dev.cc] runtime: change set_sec to take int64 2014-11-14 14:50:00 -05:00
defs_freebsd.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
defs_linux_386.go [dev.cc] runtime: add explicit siginfo.si_addr field 2014-11-19 14:56:49 -05:00
defs_linux_amd64.go [dev.cc] runtime: add explicit siginfo.si_addr field 2014-11-19 14:56:49 -05:00
defs_linux_arm.go [dev.cc] runtime: add explicit siginfo.si_addr field 2014-11-19 14:56:49 -05:00
defs_linux_ppc64.go all: power64 is now ppc64 2014-12-05 19:13:20 -05:00
defs_linux_ppc64le.go all: power64 is now ppc64 2014-12-05 19:13:20 -05:00
defs_linux.go build: merge the great pkg/ rename into dev.power64 2014-10-22 13:25:37 -04:00
defs_nacl_386.go [dev.cc] runtime: convert defs_$GOOS_$GOARCH.h to Go 2014-11-11 17:07:37 -05:00
defs_nacl_amd64p32.go [dev.cc] runtime: convert defs_$GOOS_$GOARCH.h to Go 2014-11-11 17:07:37 -05:00
defs_nacl_arm.go [dev.cc] runtime: convert defs_$GOOS_$GOARCH.h to Go 2014-11-11 17:07:37 -05:00
defs_netbsd_386.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
defs_netbsd_amd64.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
defs_netbsd_arm.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
defs_netbsd.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
defs_openbsd_386.go [dev.cc] runtime: change set_sec to take int64 2014-11-14 14:50:00 -05:00
defs_openbsd_amd64.go [dev.cc] runtime: change set_sec to take int64 2014-11-14 14:50:00 -05:00
defs_openbsd.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
defs_plan9_386.go [dev.cc] runtime: convert Plan 9 port to Go 2014-11-21 19:39:01 +01:00
defs_plan9_amd64.go [dev.cc] runtime: convert Plan 9 port to Go 2014-11-21 19:39:01 +01:00
defs_solaris_amd64.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
defs_solaris.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
defs_windows_386.go [dev.cc] runtime: convert defs_$GOOS_$GOARCH.h to Go 2014-11-11 17:07:37 -05:00
defs_windows_amd64.go [dev.cc] runtime: convert defs_$GOOS_$GOARCH.h to Go 2014-11-11 17:07:37 -05:00
defs_windows.go runtime: handle all windows exception (second attempt) 2014-10-15 11:11:11 +11:00
env_plan9.go [dev.cc] runtime: convert Plan 9 port to Go 2014-11-21 19:39:01 +01:00
env_posix.go [dev.cc] runtime/cgo: convert from C to Go 2014-11-11 17:05:37 -05:00
error.go runtime: delete panicstring; move its checks into gopanic 2014-09-18 14:49:24 -04:00
export_futex_test.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
export_test.go runtime: a better fallback hash 2014-12-22 22:41:01 +00:00
extern.go [dev.cc] runtime: delete scalararg, ptrarg; rename onM to systemstack 2014-11-12 14:54:31 -05:00
funcdata.h [dev.cc] runtime: convert header files to Go 2014-11-11 17:05:19 -05:00
futex_test.go [dev.cc] runtime: convert scheduler from C to Go 2014-11-11 17:08:33 -05:00
gc_test.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
gcinfo_test.go all: power64 is now ppc64 2014-12-05 19:13:20 -05:00
gengoos.go [dev.cc] runtime: explicitly exclude android in zgoos_linux.go 2014-11-21 18:13:59 -05:00
go_tls.h [dev.cc] cmd/dist: adjust for build process without cmd/cc 2014-11-11 01:29:05 -05:00
hash32.go runtime: a better fallback hash 2014-12-22 22:41:01 +00:00
hash64.go runtime: a better fallback hash 2014-12-22 22:41:01 +00:00
hash_test.go runtime: a better fallback hash 2014-12-22 22:41:01 +00:00
hashmap_fast.go runtime: hashmap: move overflow pointer to end of bucket 2014-12-22 22:25:48 +00:00
hashmap.go runtime: fix nacl build, hashmap overflow field offset was incorrect. 2014-12-22 23:25:24 +00:00
heapdump.go runtime: make stack frames fixed size by modifying goproc/deferproc. 2014-12-23 01:08:29 +00:00
iface_test.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
iface.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
lfstack_32bit.go [dev.cc] runtime: convert nacl support to Go 2014-11-21 10:22:18 -05:00
lfstack_amd64.go [dev.cc] runtime: fix lfstack for amd64 addresses in top half of addr space 2014-11-14 12:55:23 -05:00
lfstack_linux_ppc64x.go all: power64 is now ppc64 2014-12-05 19:13:20 -05:00
lfstack_test.go [dev.garbage] runtime: fix TestLFStack on 386 2014-10-27 15:57:07 -04:00
lfstack.go [dev.garbage] all: merge dev.cc (493ad916c3b1) into dev.garbage 2014-11-24 12:07:11 -05:00
lock_futex.go [dev.cc] runtime: convert scheduler from C to Go 2014-11-11 17:08:33 -05:00
lock_sema.go [dev.cc] runtime: convert scheduler from C to Go 2014-11-11 17:08:33 -05:00
Makefile build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
malloc1.go runtime: shrink initial arena if reservation fails 2014-12-15 20:55:33 +00:00
malloc2.go runtime: fix a minor typo in comments 2014-12-18 20:35:56 +00:00
malloc_test.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
malloc.go runtime: add profiling infrastructure for the Concurrent GC 2014-12-16 22:15:51 +00:00
map_test.go runtime: try harder to get different iteration orders. 2014-09-15 12:30:57 -07:00
mapspeed_test.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
mcache.go [dev.garbage] runtime: Turn concurrent GC on by default. Avoid write barriers for GC internal structures such as free lists. 2014-11-20 12:08:13 -05:00
mcentral.go [dev.garbage] runtime: Turn concurrent GC on by default. Avoid write barriers for GC internal structures such as free lists. 2014-11-20 12:08:13 -05:00
mem_bsd.go [dev.cc] runtime: convert nacl support to Go 2014-11-21 10:22:18 -05:00
mem_darwin.go [dev.cc] runtime: convert memory allocator and garbage collector to Go 2014-11-11 17:05:02 -05:00
mem_linux.go [dev.cc] all: merge dev.power64 (7667e41f3ced) into dev.cc 2014-11-14 12:10:52 -05:00
mem_plan9.go [dev.cc] runtime: convert Plan 9 port to Go 2014-11-21 19:39:01 +01:00
mem_windows.go [dev.cc] runtime: convert mem_windows.c to Go 2014-11-13 14:53:13 +11:00
mem.go [dev.cc] runtime: delete scalararg, ptrarg; rename onM to systemstack 2014-11-12 14:54:31 -05:00
memclr_386.s [dev.power64] cmd/5a, cmd/6a, cmd/8a, cmd/9a: make labels function-scoped 2014-10-28 21:50:16 -04:00
memclr_amd64.s [dev.power64] cmd/5a, cmd/6a, cmd/8a, cmd/9a: make labels function-scoped 2014-10-28 21:50:16 -04:00
memclr_arm.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
memclr_plan9_386.s [dev.power64] cmd/5a, cmd/6a, cmd/8a, cmd/9a: make labels function-scoped 2014-10-28 21:50:16 -04:00
memclr_plan9_amd64.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
memclr_ppc64x.s all: power64 is now ppc64 2014-12-05 19:13:20 -05:00
memmove_386.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
memmove_amd64.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
memmove_arm.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
memmove_linux_amd64_test.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
memmove_nacl_amd64p32.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
memmove_plan9_386.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
memmove_plan9_amd64.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
memmove_ppc64x.s all: power64 is now ppc64 2014-12-05 19:13:20 -05:00
memmove_test.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
mfinal_test.go runtime: update docs, code for SetFinalizer 2014-10-06 14:18:09 -04:00
mfixalloc.go [dev.cc] runtime: convert memory allocator and garbage collector to Go 2014-11-11 17:05:02 -05:00
mgc0.go [dev.garbage] runtime: reduce stack footprint of write barriers 2014-12-05 16:47:50 -05:00
mgc0.h [dev.garbage] all: merge dev.cc into dev.garbage 2014-11-15 08:00:38 -05:00
mgc1.go [dev.garbage] all: merge dev.cc into dev.garbage 2014-11-15 08:00:38 -05:00
mgc.go cmd/gc: add //go:nowritebarrier to diagnose unintended write barriers 2014-12-12 20:48:10 +00:00
mheap.go [dev.garbage] runtime: Turn concurrent GC on by default. Avoid write barriers for GC internal structures such as free lists. 2014-11-20 12:08:13 -05:00
mknacl.sh build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
mprof.go runtime: fix deadlock in runtime.Stack 2014-12-16 17:04:45 +00:00
msize.go [dev.cc] runtime: convert memory allocator and garbage collector to Go 2014-11-11 17:05:02 -05:00
netpoll_epoll.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
netpoll_kqueue.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
netpoll_nacl.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
netpoll_solaris.go [dev.cc] runtime: convert Solaris port to Go 2014-11-13 16:07:10 +01:00
netpoll_stub.go [dev.cc] runtime: convert Plan 9 port to Go 2014-11-21 19:39:01 +01:00
netpoll_windows.go [dev.cc] runtime: convert remaining windows C code to Go 2014-11-20 12:24:03 +11:00
netpoll.go [dev.cc] runtime: convert Solaris port to Go 2014-11-13 16:07:10 +01:00
noasm.go all: power64 is now ppc64 2014-12-05 19:13:20 -05:00
norace_test.go [dev.cc] runtime: convert race implementation from C to Go 2014-11-11 17:08:14 -05:00
os1_darwin.go runtime: run libc SIGSETXID and SIGCANCEL handlers on signal stack 2014-12-23 01:33:36 +00:00
os1_dragonfly.go runtime: run libc SIGSETXID and SIGCANCEL handlers on signal stack 2014-12-23 01:33:36 +00:00
os1_freebsd.go runtime: run libc SIGSETXID and SIGCANCEL handlers on signal stack 2014-12-23 01:33:36 +00:00
os1_linux.go runtime: run libc SIGSETXID and SIGCANCEL handlers on signal stack 2014-12-23 01:33:36 +00:00
os1_nacl.go runtime: fix nacl build 2014-12-11 07:31:32 +00:00
os1_netbsd_386.go [dev.cc] runtime: convert netbsd/386 port to Go 2014-11-22 22:09:11 +11:00
os1_netbsd_amd64.go [dev.cc] runtime: convert netbsd/amd64 port to Go 2014-11-22 16:05:31 +11:00
os1_netbsd.go runtime: run libc SIGSETXID and SIGCANCEL handlers on signal stack 2014-12-23 01:33:36 +00:00
os1_openbsd.go runtime: run libc SIGSETXID and SIGCANCEL handlers on signal stack 2014-12-23 01:33:36 +00:00
os1_plan9.go runtime: clean up & go-ify the hash function seeder 2014-12-10 21:15:35 +00:00
os1_windows_386.go [dev.cc] runtime: convert remaining windows C code to Go 2014-11-20 12:24:03 +11:00
os1_windows_amd64.go [dev.cc] runtime: convert remaining windows C code to Go 2014-11-20 12:24:03 +11:00
os1_windows.go runtime: clean up & go-ify the hash function seeder 2014-12-10 21:15:35 +00:00
os2_darwin.go [dev.cc] runtime: convert operating system support code from C to Go 2014-11-11 17:08:54 -05:00
os2_dragonfly.go [dev.cc] runtime: convert dragonfly/amd64 port to Go 2014-11-15 04:47:20 +11:00
os2_freebsd.go [dev.cc] runtime: convert freebsd to Go 2014-11-11 23:00:29 -05:00
os2_linux.go [dev.cc] runtime: convert operating system support code from C to Go 2014-11-11 17:08:54 -05:00
os2_nacl.go [dev.cc] runtime: convert nacl support to Go 2014-11-21 10:22:18 -05:00
os2_netbsd.go [dev.cc] runtime: convert netbsd/amd64 port to Go 2014-11-22 16:05:31 +11:00
os2_openbsd.go [dev.cc] runtime: convert openbsd/amd64 port to Go 2014-11-14 13:01:12 +11:00
os2_plan9.go [dev.cc] runtime: convert Plan 9 port to Go 2014-11-21 19:39:01 +01:00
os2_solaris.go [dev.cc] runtime: convert Solaris port to Go 2014-11-13 16:07:10 +01:00
os2_windows.go [dev.cc] runtime: convert remaining windows C code to Go 2014-11-20 12:24:03 +11:00
os3_solaris.go runtime: run libc SIGSETXID and SIGCANCEL handlers on signal stack 2014-12-23 01:33:36 +00:00
os_android_arm.go [dev.cc] runtime: migrate Android/ARM port to Go. 2014-11-21 18:15:30 -05:00
os_darwin.go [dev.cc] runtime: convert freebsd to Go 2014-11-11 23:00:29 -05:00
os_dragonfly.go [dev.cc] runtime: convert dragonfly/amd64 port to Go 2014-11-15 04:47:20 +11:00
os_freebsd_arm.go [dev.cc] runtime: convert freebsd to Go 2014-11-11 23:00:29 -05:00
os_freebsd.go [dev.cc] runtime: convert freebsd to Go 2014-11-11 23:00:29 -05:00
os_linux_386.go runtime: clean up & go-ify the hash function seeder 2014-12-10 21:15:35 +00:00
os_linux_arm.go [dev.cc] runtime: fix bus error accessing auxv random data on arm5 2014-11-15 09:57:02 +11:00
os_linux.go [dev.cc] runtime: convert operating system support code from C to Go 2014-11-11 17:08:54 -05:00
os_nacl_arm.go [dev.cc] runtime: convert nacl support to Go 2014-11-21 10:22:18 -05:00
os_nacl.go [dev.cc] runtime: convert nacl support to Go 2014-11-21 10:22:18 -05:00
os_netbsd_arm.go runtime: convert netbsd/arm to Go 2014-12-05 16:17:09 -05:00
os_netbsd.go [dev.cc] runtime: convert netbsd/amd64 port to Go 2014-11-22 16:05:31 +11:00
os_openbsd.go [dev.cc] runtime: convert openbsd/amd64 port to Go 2014-11-14 13:01:12 +11:00
os_plan9_386.go [dev.cc] runtime: convert Plan 9 port to Go 2014-11-21 19:39:01 +01:00
os_plan9_amd64.go [dev.cc] runtime: convert Plan 9 port to Go 2014-11-21 19:39:01 +01:00
os_plan9.go runtime: fix brk_ signature for plan9 2014-12-20 21:41:44 +00:00
os_solaris.go [dev.cc] runtime: convert Solaris port to Go 2014-11-13 16:07:10 +01:00
os_windows_386.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
os_windows_amd64.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
os_windows.go [dev.cc] runtime: convert remaining windows C code to Go 2014-11-20 12:24:03 +11:00
panic1.go runtime: make stack frames fixed size by modifying goproc/deferproc. 2014-12-23 01:08:29 +00:00
panic.go runtime: make stack frames fixed size by modifying goproc/deferproc. 2014-12-23 01:08:29 +00:00
parfor_test.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
parfor.go [dev.cc] runtime: convert parallel support code from C to Go 2014-11-11 17:07:54 -05:00
print1_write_android.go runtime: send android stderr to /dev/log/main 2014-12-10 22:06:13 +00:00
print1_write.go runtime: send android stderr to /dev/log/main 2014-12-10 22:06:13 +00:00
print1.go runtime: send android stderr to /dev/log/main 2014-12-10 22:06:13 +00:00
proc1.go runtime: make stack frames fixed size by modifying goproc/deferproc. 2014-12-23 01:08:29 +00:00
proc_test.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
proc.go [dev.garbage] all: merge dev.cc (493ad916c3b1) into dev.garbage 2014-11-24 12:07:11 -05:00
race0.go [dev.cc] runtime: convert race implementation from C to Go 2014-11-11 17:08:14 -05:00
race1.go [dev.cc] all: merge default (e4ab8f908aac) into dev.cc 2014-11-20 11:48:08 -05:00
race_amd64.s [dev.cc] all: merge default (e4ab8f908aac) into dev.cc 2014-11-20 11:48:08 -05:00
race.go [dev.cc] runtime: delete scalararg, ptrarg; rename onM to systemstack 2014-11-12 14:54:31 -05:00
rdebug.go [dev.cc] runtime: convert scheduler from C to Go 2014-11-11 17:08:33 -05:00
rt0_android_arm.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
rt0_darwin_386.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
rt0_darwin_amd64.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
rt0_dragonfly_386.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
rt0_dragonfly_amd64.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
rt0_freebsd_386.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
rt0_freebsd_amd64.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
rt0_freebsd_arm.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
rt0_linux_386.s [dev.garbage] all: merge dev.cc into dev.garbage 2014-11-15 08:00:38 -05:00
rt0_linux_amd64.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
rt0_linux_arm.s runtime: more NOPTR 2014-09-24 19:04:06 -04:00
rt0_linux_ppc64.s all: power64 is now ppc64 2014-12-05 19:13:20 -05:00
rt0_linux_ppc64le.s all: power64 is now ppc64 2014-12-05 19:13:20 -05:00
rt0_nacl_386.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
rt0_nacl_amd64p32.s runtime: disable fake time on nacl 2014-10-27 20:47:15 -04:00
rt0_nacl_arm.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
rt0_netbsd_386.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
rt0_netbsd_amd64.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
rt0_netbsd_arm.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
rt0_openbsd_386.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
rt0_openbsd_amd64.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
rt0_plan9_386.s runtime: more NOPTR 2014-09-24 19:04:06 -04:00
rt0_plan9_amd64.s runtime: more NOPTR 2014-09-24 19:04:06 -04:00
rt0_solaris_amd64.s runtime: more NOPTR 2014-09-24 19:04:06 -04:00
rt0_windows_386.s runtime: more NOPTR 2014-09-24 17:50:44 -04:00
rt0_windows_amd64.s [dev.cc] runtime: convert assembly files for C to Go transition 2014-11-11 17:06:22 -05:00
rune.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
runtime1.go [dev.garbage] runtime: add prefetcht0, prefetcht1, prefetcht2, prefetcht3, prefetchnta for GC 2014-11-21 15:57:10 -05:00
runtime2.go runtime: run libc SIGSETXID and SIGCANCEL handlers on signal stack 2014-12-23 01:33:36 +00:00
runtime_linux_test.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
runtime_test.go runtime: be very careful with bad pointer tests 2014-09-20 23:31:11 -07:00
runtime_unix_test.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
runtime-gdb.py build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
runtime.go runtime: generate windows callback list with go generate 2014-12-05 16:24:20 -05:00
select.go runtime: use doubly-linked lists for channel send/recv queues. 2014-12-08 19:20:12 +00:00
sema.go runtime: fix sudog leak 2014-11-16 16:44:45 -05:00
signal1_unix.go runtime: run libc SIGSETXID and SIGCANCEL handlers on signal stack 2014-12-23 01:33:36 +00:00
signal_386.go [dev.cc] runtime: convert signal handlers from C to Go 2014-11-11 17:05:55 -05:00
signal_amd64x.go [dev.cc] runtime: convert signal handlers from C to Go 2014-11-11 17:05:55 -05:00
signal_arm.go [dev.cc] runtime: convert signal handlers from C to Go 2014-11-11 17:05:55 -05:00
signal_darwin_386.go [dev.cc] runtime: convert signal handlers from C to Go 2014-11-11 17:05:55 -05:00
signal_darwin_amd64.go [dev.cc] runtime: convert signal handlers from C to Go 2014-11-11 17:05:55 -05:00
signal_darwin.go [dev.cc] runtime: convert signal handlers from C to Go 2014-11-11 17:05:55 -05:00
signal_dragonfly_386.go [dev.cc] runtime: convert dragonfly/386 port to Go 2014-11-25 03:15:11 +11:00
signal_dragonfly_amd64.go [dev.cc] runtime: convert dragonfly/amd64 port to Go 2014-11-15 04:47:20 +11:00
signal_dragonfly.go [dev.cc] runtime: convert dragonfly/amd64 port to Go 2014-11-15 04:47:20 +11:00
signal_freebsd_386.go [dev.cc] runtime: convert freebsd to Go 2014-11-11 23:00:29 -05:00
signal_freebsd_amd64.go [dev.cc] runtime: convert freebsd to Go 2014-11-11 23:00:29 -05:00
signal_freebsd_arm.go [dev.cc] runtime: convert freebsd to Go 2014-11-11 23:00:29 -05:00
signal_freebsd.go [dev.cc] runtime: make SIGSYS notifiable on freebsd (again) 2014-11-14 04:29:03 +11:00
signal_linux_386.go [dev.cc] runtime: add explicit siginfo.si_addr field 2014-11-19 14:56:49 -05:00
signal_linux_amd64.go [dev.cc] runtime: add explicit siginfo.si_addr field 2014-11-19 14:56:49 -05:00
signal_linux_arm.go [dev.cc] runtime: add explicit siginfo.si_addr field 2014-11-19 14:56:49 -05:00
signal_linux_ppc64x.go all: power64 is now ppc64 2014-12-05 19:13:20 -05:00
signal_linux.go runtime: run libc SIGSETXID and SIGCANCEL handlers on signal stack 2014-12-23 01:33:36 +00:00
signal_nacl_386.go [dev.cc] runtime: convert nacl support to Go 2014-11-21 10:22:18 -05:00
signal_nacl_amd64p32.go [dev.cc] runtime: convert nacl support to Go 2014-11-21 10:22:18 -05:00
signal_nacl_arm.go [dev.cc] runtime: convert nacl support to Go 2014-11-21 10:22:18 -05:00
signal_nacl.go [dev.cc] runtime: convert nacl support to Go 2014-11-21 10:22:18 -05:00
signal_netbsd_386.go [dev.cc] runtime: convert netbsd/386 port to Go 2014-11-22 22:09:11 +11:00
signal_netbsd_amd64.go [dev.cc] runtime: convert netbsd/amd64 port to Go 2014-11-22 16:05:31 +11:00
signal_netbsd_arm.go runtime: convert netbsd/arm to Go 2014-12-05 16:17:09 -05:00
signal_netbsd.go [dev.cc] runtime: convert netbsd/amd64 port to Go 2014-11-22 16:05:31 +11:00
signal_openbsd_386.go [dev.cc] runtime: convert openbsd/386 port to Go 2014-11-15 03:55:14 +11:00
signal_openbsd_amd64.go [dev.cc] runtime: convert openbsd/amd64 port to Go 2014-11-14 13:01:12 +11:00
signal_openbsd.go [dev.cc] runtime: convert openbsd/amd64 port to Go 2014-11-14 13:01:12 +11:00
signal_plan9.go [dev.cc] runtime: convert Plan 9 port to Go 2014-11-21 19:39:01 +01:00
signal_ppc64x.go all: power64 is now ppc64 2014-12-05 19:13:20 -05:00
signal_solaris_amd64.go [dev.cc] runtime: fix nil pointer crash handler bug on Solaris 2014-11-14 14:25:49 +01:00
signal_solaris.go [dev.cc] runtime: convert Solaris port to Go 2014-11-13 16:07:10 +01:00
signal_unix.go [dev.cc] runtime: delete scalararg, ptrarg; rename onM to systemstack 2014-11-12 14:54:31 -05:00
signal_unix.h build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
signals_windows.h build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
sigpanic_unix.go [dev.cc] runtime: convert signal handlers from C to Go 2014-11-11 17:05:55 -05:00
sigqueue.go [dev.cc] runtime: delete scalararg, ptrarg; rename onM to systemstack 2014-11-12 14:54:31 -05:00
slice.go [dev.cc] runtime: convert memory allocator and garbage collector to Go 2014-11-11 17:05:02 -05:00
softfloat64_test.go [dev.cc] runtime: convert softfloat_arm.c to Go + build fixes 2014-11-11 22:30:02 -05:00
softfloat64.go [dev.cc] runtime: convert softfloat_arm.c to Go + build fixes 2014-11-11 22:30:02 -05:00
softfloat_arm.go [dev.cc] runtime: fix _sfloat thunk 2014-11-15 13:27:05 +11:00
sqrt.go [dev.cc] runtime: convert softfloat_arm.c to Go + build fixes 2014-11-11 22:30:02 -05:00
stack1.go runtime: make stack frames fixed size by modifying goproc/deferproc. 2014-12-23 01:08:29 +00:00
stack2.go [dev.garbage] runtime: raise StackGuard limit for Windows (again) 2014-12-05 19:50:09 -05:00
stack_test.go runtime: reenable TestStackGrowth on 32-bit systems 2014-09-16 17:46:25 -04:00
stack.h [dev.garbage] runtime: raise StackGuard limit for Windows (again) 2014-12-05 19:50:09 -05:00
string1.go [dev.cc] runtime: convert basic library routines from C to Go 2014-11-11 17:07:06 -05:00
string_test.go runtime: make gostringnocopy update maxstring 2014-09-11 16:53:34 -07:00
string.go [dev.cc] all: merge dev.power64 (7667e41f3ced) into dev.cc 2014-11-14 12:10:52 -05:00
stubs2.go [dev.cc] runtime: convert Plan 9 port to Go 2014-11-21 19:39:01 +01:00
stubs3.go [dev.cc] runtime: convert Plan 9 port to Go 2014-11-21 19:39:01 +01:00
stubs.go [dev.garbage] all: merge dev.cc (493ad916c3b1) into dev.garbage 2014-11-24 12:07:11 -05:00
symtab_test.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
symtab.go runtime: fix missing newline when dumping bad symbol table 2014-12-08 18:39:58 +00:00
sys_arm.go [dev.cc] runtime: convert arch-specific .c and .h files to Go 2014-11-11 17:09:09 -05:00
sys_darwin_386.s [dev.cc] all: merge dev.power64 (7667e41f3ced) into dev.cc 2014-11-14 12:10:52 -05:00
sys_darwin_amd64.s [dev.cc] all: merge dev.power64 (7667e41f3ced) into dev.cc 2014-11-14 12:10:52 -05:00
sys_dragonfly_386.s [dev.cc] all: merge dev.power64 (7667e41f3ced) into dev.cc 2014-11-14 12:10:52 -05:00
sys_dragonfly_amd64.s [dev.cc] runtime: convert assembly files for C to Go transition 2014-11-11 17:06:22 -05:00
sys_freebsd_386.s [dev.cc] all: merge dev.power64 (7667e41f3ced) into dev.cc 2014-11-14 12:10:52 -05:00
sys_freebsd_amd64.s [dev.cc] runtime: convert assembly files for C to Go transition 2014-11-11 17:06:22 -05:00
sys_freebsd_arm.s [dev.cc] runtime: convert assembly files for C to Go transition 2014-11-11 17:06:22 -05:00
sys_linux_386.s [dev.cc] runtime: convert assembly files for C to Go transition 2014-11-11 17:06:22 -05:00
sys_linux_amd64.s [dev.cc] all: merge dev.power64 (7667e41f3ced) into dev.cc 2014-11-14 12:10:52 -05:00
sys_linux_arm.s [dev.cc] all: merge dev.power64 (7667e41f3ced) into dev.cc 2014-11-14 12:10:52 -05:00
sys_linux_ppc64x.s all: power64 is now ppc64 2014-12-05 19:13:20 -05:00
sys_nacl_386.s [dev.cc] all: merge dev.power64 (7667e41f3ced) into dev.cc 2014-11-14 12:10:52 -05:00
sys_nacl_amd64p32.s [dev.cc] all: merge dev.power64 (7667e41f3ced) into dev.cc 2014-11-14 12:10:52 -05:00
sys_nacl_arm.s [dev.cc] all: merge dev.power64 (7667e41f3ced) into dev.cc 2014-11-14 12:10:52 -05:00
sys_netbsd_386.s [dev.cc] runtime: convert assembly files for C to Go transition 2014-11-11 17:06:22 -05:00
sys_netbsd_amd64.s [dev.cc] runtime: convert assembly files for C to Go transition 2014-11-11 17:06:22 -05:00
sys_netbsd_arm.s [dev.cc] runtime: convert assembly files for C to Go transition 2014-11-11 17:06:22 -05:00
sys_openbsd_386.s [dev.cc] all: merge dev.power64 (7667e41f3ced) into dev.cc 2014-11-14 12:10:52 -05:00
sys_openbsd_amd64.s [dev.cc] runtime: convert assembly files for C to Go transition 2014-11-11 17:06:22 -05:00
sys_plan9_386.s [dev.cc] runtime: convert assembly files for C to Go transition 2014-11-11 17:06:22 -05:00
sys_plan9_amd64.s [dev.cc] runtime: convert assembly files for C to Go transition 2014-11-11 17:06:22 -05:00
sys_ppc64x.go all: power64 is now ppc64 2014-12-05 19:13:20 -05:00
sys_solaris_amd64.s [dev.cc] all: merge dev.power64 (7667e41f3ced) into dev.cc 2014-11-14 12:10:52 -05:00
sys_windows_386.s [dev.cc] runtime: update sys_windows_386.s and sys_windows_amd64.s for Go conversion 2014-11-19 11:55:15 +11:00
sys_windows_amd64.s [dev.cc] runtime: update sys_windows_386.s and sys_windows_amd64.s for Go conversion 2014-11-19 11:55:15 +11:00
sys_x86.go [dev.cc] runtime: convert arch-specific .c and .h files to Go 2014-11-11 17:09:09 -05:00
syscall2_solaris.go [dev.cc] runtime: convert Solaris port to Go 2014-11-13 16:07:10 +01:00
syscall_nacl.h build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
syscall_solaris.go [dev.cc] runtime: convert Solaris port to Go 2014-11-13 16:07:10 +01:00
syscall_windows_test.go syscall: clean up TestStdcallAndCDeclCallbacks to have no warnings 2014-12-22 00:31:57 +00:00
syscall_windows.go [dev.cc] runtime: convert remaining windows C code to Go 2014-11-20 12:24:03 +11:00
thunk_windows.s [dev.cc] runtime: convert assembly files for C to Go transition 2014-11-11 17:06:22 -05:00
thunk.s all: power64 is now ppc64 2014-12-05 19:13:20 -05:00
time.go runtime: add fake time support back. 2014-10-27 20:35:15 -04:00
tls_arm.s [dev.cc] runtime: convert assembly files for C to Go transition 2014-11-11 17:06:22 -05:00
traceback.go runtime: make stack frames fixed size by modifying goproc/deferproc. 2014-12-23 01:08:29 +00:00
type.go runtime: if key type is reflexive, don't call equal(k, k) 2014-12-15 21:43:49 +00:00
typekind1.go [dev.cc] runtime: convert header files to Go 2014-11-11 17:05:19 -05:00
typekind.go runtime: remove duplicated Go constants 2014-09-16 10:22:15 -04:00
typekind.h [dev.cc] runtime: convert header files to Go 2014-11-11 17:05:19 -05:00
unaligned1.go runtime: a better fallback hash 2014-12-22 22:41:01 +00:00
unaligned2.go runtime: a better fallback hash 2014-12-22 22:41:01 +00:00
vdso_linux_amd64.go runtime: clean up & go-ify the hash function seeder 2014-12-10 21:15:35 +00:00
vdso_none.go [dev.garbage] all: merge dev.cc into dev.garbage 2014-11-15 08:00:38 -05:00
vlop_386.s build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
vlop_arm_test.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
vlop_arm.s [dev.cc] runtime: fix arm5 build 2014-11-11 23:24:54 -05:00
vlrt.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
wbfat_gen.go [dev.garbage] cmd/gc, runtime: implement write barriers in terms of writebarrierptr 2014-10-30 10:16:03 -04:00
wbfat.go [dev.garbage] cmd/gc, runtime: implement write barriers in terms of writebarrierptr 2014-10-30 10:16:03 -04:00
wincallback.go runtime: use go generate for zcallback_windows.go 2014-12-19 02:45:40 +00:00
zcallback_windows.go runtime: use go generate for zcallback_windows.go 2014-12-19 02:45:40 +00:00
zcallback_windows.s runtime: generate windows callback list with go generate 2014-12-05 16:24:20 -05:00
zgoarch_386.go all: power64 is now ppc64 2014-12-05 19:13:20 -05:00
zgoarch_amd64.go all: power64 is now ppc64 2014-12-05 19:13:20 -05:00
zgoarch_amd64p32.go all: power64 is now ppc64 2014-12-05 19:13:20 -05:00
zgoarch_arm.go all: power64 is now ppc64 2014-12-05 19:13:20 -05:00
zgoarch_ppc64.go all: power64 is now ppc64 2014-12-05 19:13:20 -05:00
zgoarch_ppc64le.go all: power64 is now ppc64 2014-12-05 19:13:20 -05:00
zgoos_android.go [dev.cc] runtime: explicitly exclude android in zgoos_linux.go 2014-11-21 18:13:59 -05:00
zgoos_darwin.go [dev.cc] runtime: explicitly exclude android in zgoos_linux.go 2014-11-21 18:13:59 -05:00
zgoos_dragonfly.go [dev.cc] runtime: explicitly exclude android in zgoos_linux.go 2014-11-21 18:13:59 -05:00
zgoos_freebsd.go [dev.cc] runtime: explicitly exclude android in zgoos_linux.go 2014-11-21 18:13:59 -05:00
zgoos_linux.go [dev.cc] runtime: explicitly exclude android in zgoos_linux.go 2014-11-21 18:13:59 -05:00
zgoos_nacl.go [dev.cc] runtime: explicitly exclude android in zgoos_linux.go 2014-11-21 18:13:59 -05:00
zgoos_netbsd.go [dev.cc] runtime: explicitly exclude android in zgoos_linux.go 2014-11-21 18:13:59 -05:00
zgoos_openbsd.go [dev.cc] runtime: explicitly exclude android in zgoos_linux.go 2014-11-21 18:13:59 -05:00
zgoos_plan9.go [dev.cc] runtime: explicitly exclude android in zgoos_linux.go 2014-11-21 18:13:59 -05:00
zgoos_solaris.go [dev.cc] runtime: explicitly exclude android in zgoos_linux.go 2014-11-21 18:13:59 -05:00
zgoos_windows.go [dev.cc] runtime: explicitly exclude android in zgoos_linux.go 2014-11-21 18:13:59 -05:00