go/src
David Crawshaw f4c7a12c2c runtime: make module typemaps visible to the GC
The map[typeOff]*_type object is created at run time and stored in
the moduledata. The moduledata object is marked by the linker as
SNOPTRDATA, so the reference is ignored by the GC. Running
misc/cgo/testplugin/test.bash with GOGC=1 will eventually collect
the typemap and crash.

This bug probably comes up in -linkshared binaries in Go 1.7.
I don't know why we haven't seen a report about this yet.

Fixes #17680

Change-Id: I0e9b5c006010e8edd51d9471651620ba665248d3
Reviewed-on: https://go-review.googlesource.com/32430
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Michael Hudson-Doyle <michael.hudson@canonical.com>
Reviewed-by: Ian Lance Taylor <iant@golang.org>
2016-10-31 04:49:52 +00:00
..
archive archive/tar: validate sparse headers in parsePAX 2016-10-22 16:35:14 +00:00
bufio bufio: remove unnecessary "continue" 2016-10-24 14:49:44 +00:00
builtin
bytes bytes, strings: optimize for ASCII sets 2016-10-28 17:37:04 +00:00
cmd cmd/link, plugin: use full plugin path for symbols 2016-10-31 04:48:42 +00:00
compress compress/flate: tighten the BestSpeed max match offset bound. 2016-10-30 22:52:14 +00:00
container
context context: add comments to the WithCancel example, apply minor improvements 2016-10-26 22:35:07 +00:00
crypto crypto/tls: add GetClientCertificate callback 2016-10-27 17:20:07 +00:00
database/sql database/sql: add context helper methods and transaction types 2016-10-30 17:05:28 +00:00
debug cmd/dist: use debug/pe directly for cmd/link 2016-10-17 15:22:17 +00:00
encoding encoding/csv: document Read error behavior 2016-10-28 19:38:12 +00:00
errors
expvar expvar: add Value methods 2016-10-13 21:39:03 +00:00
flag flag: arrange for FlagSet.Usage to be non-nil by default 2016-10-26 16:13:40 +00:00
fmt fmt: document that unexported struct fields don't get the String/Error treatment 2016-10-26 13:56:45 +00:00
go database/sql: add context helper methods and transaction types 2016-10-30 17:05:28 +00:00
hash
html html/template, text/template: drop defined template list from errors 2016-10-28 17:10:55 +00:00
image image/png: implement grayscale transparency. 2016-10-28 02:10:13 +00:00
index/suffixarray
internal runtime/trace, internal/trace: script to collect canned traces 2016-10-28 17:46:49 +00:00
io io: clarify Pipe docs 2016-10-18 12:53:56 +00:00
log all: freeze net/rpc and reword the 'frozen' message in other frozen packages 2016-10-26 16:11:07 +00:00
math math/big: flip long/short flag on TestFloat32Distribution 2016-10-27 21:44:37 +00:00
mime mime/multipart: simplify Part.Read 2016-10-28 19:05:47 +00:00
net net/http: handle 3xx redirects properly 2016-10-30 02:17:28 +00:00
os os: adjust (*File).Read comment 2016-10-28 19:19:11 +00:00
path path/filepath: fix Abs on Windows 2016-10-29 16:44:45 +00:00
plugin cmd/link, plugin: use full plugin path for symbols 2016-10-31 04:48:42 +00:00
reflect runtime, cmd/compile: rename memclr -> memclrNoHeapPointers 2016-10-28 18:20:33 +00:00
regexp regexp: avoid alloc in QuoteMeta when not quoting 2016-10-19 07:09:08 +00:00
runtime runtime: make module typemaps visible to the GC 2016-10-31 04:49:52 +00:00
sort
strconv strconv: strip \r in raw strings passed to Unquote 2016-10-17 18:34:02 +00:00
strings bytes, strings: optimize for ASCII sets 2016-10-28 17:37:04 +00:00
sync sync: enable Pool when using race detector 2016-10-30 19:09:20 +00:00
syscall syscall: remove X__cmsg_data from Cmsghdr 2016-10-30 19:04:09 +00:00
testing runtime: Profile goroutines holding contended mutexes. 2016-10-28 11:47:16 +00:00
text html/template, text/template: drop defined template list from errors 2016-10-28 17:10:55 +00:00
time time: clarify Equal docs 2016-10-28 22:31:09 +00:00
unicode unicode/utf8: optimize ValidRune 2016-10-26 23:02:52 +00:00
unsafe
vendor/golang_org/x vendor/golang_org/x/crypto/poly1305: sync to 1150b8bd09e53aea1d415621adae9bad665061a1 2016-10-27 18:03:11 +00:00
Make.dist
all.bash
all.bat
all.rc
androidtest.bash
bootstrap.bash
buildall.bash
clean.bash
clean.bat
clean.rc
cmp.bash
iostest.bash
make.bash
make.bat
make.rc
naclmake.bash
nacltest.bash
race.bash
race.bat
run.bash
run.bat
run.rc