go/src
Austin Clements 9065c3bf34 runtime: support DT_GNU_HASH in VDSO
Currently we only support finding symbols in the VDSO using the old
DT_HASH. These days everything uses DT_GNU_HASH instead. To keep up
with the times and future-proof against DT_HASH disappearing from the
VDSO in the future, this commit adds support for DT_GNU_HASH and
prefers it over DT_HASH.

Tested by making sure it found a DT_GNU_HASH section and all of the
expected symbols in it, and then disabling the DT_GNU_HASH path and
making sure the old DT_HASH path still found all of the symbols.

Fixes #19649.

Change-Id: I508c8b35a019330d2c32f04f3833b69cb2686f13
Reviewed-on: https://go-review.googlesource.com/45511
Run-TryBot: Austin Clements <austin@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Ian Lance Taylor <iant@golang.org>
2017-08-13 22:08:55 +00:00
..
archive archive/zip: fix Writer to validate file 2017-08-13 17:33:10 +00:00
bufio Revert "bufio: make Reader.Peek invalidate Unreads" 2017-07-06 03:06:44 +00:00
builtin builtin: use type aliases for rune and byte 2017-06-07 00:42:59 +00:00
bytes bytes: add example for (*Buffer).Grow 2017-07-16 03:49:43 +00:00
cmd runtime, cmd/compile: add intrinsic getclosureptr 2017-08-11 18:11:22 +00:00
compress compress/lzw: don't follow code == hi if last is invalid. 2017-06-08 01:27:37 +00:00
container container/heap: avoid up() invoke if down() success at heap.Remove() 2017-05-13 19:10:24 +00:00
context
crypto crypto/tls: split clientHandshake into multiple methods 2017-08-09 22:24:19 +00:00
database/sql database/sql: fail on unsupported options when context is un-cancellable 2017-08-09 20:06:20 +00:00
debug debug/dwarf: heuristically handle both UNIX and Windows paths 2017-05-26 14:35:20 +00:00
encoding encoding/binary: add example for Read multi 2017-08-12 01:17:13 +00:00
errors
expvar expvar: reduce sync.Map overhead for (*Map).Set 2017-05-02 17:13:40 +00:00
flag flag: make default Usage prefer CommandLine's output over just os.Stderr 2017-08-08 01:47:47 +00:00
fmt fmt: remove stopAtNewline unused parameter 2017-08-11 04:56:58 +00:00
go go/types: remove nil check around range 2017-08-10 12:17:11 +00:00
hash all: gofmt 2017-06-21 03:14:30 +00:00
html html: updated entity spec link 2017-08-08 04:29:35 +00:00
image image/gif: fix writeImageBlock with SubImages 2017-06-16 05:45:48 +00:00
index/suffixarray
internal internal/poll: add tests for Windows file and serial ports 2017-08-11 04:10:13 +00:00
io io/ioutil: add example for ReadFile 2017-07-15 23:28:44 +00:00
log log: adds a Logger Output method Example 2017-07-16 03:57:11 +00:00
math math/big: improve performance for AddMulVVW and mulAddVWW for ppc64x 2017-08-11 13:59:52 +00:00
mime mime/multipart: parse boundary with spaces properly 2017-05-23 22:56:44 +00:00
net net/http: remove an unused variable in readCookies function 2017-08-10 17:52:50 +00:00
os os: remove duplicate check from windows os.Stat 2017-07-20 07:43:15 +00:00
path path/filepath: fix TestGlobError 2017-06-15 21:53:23 +00:00
plugin plugin: mention that there are known bugs with plugins 2017-07-28 00:29:08 +00:00
reflect reflect: document how DeepEqual handles cycles 2017-08-04 22:22:03 +00:00
regexp regexp: example for MatchString function 2017-07-15 21:13:35 +00:00
runtime runtime: support DT_GNU_HASH in VDSO 2017-08-13 22:08:55 +00:00
sort sort: add example for Strings 2017-07-15 23:17:23 +00:00
strconv strconv: avoid truncation of output in parse int tests 2017-08-13 10:08:42 +00:00
strings strings: speed up FieldsFunc 2017-08-13 09:58:01 +00:00
sync sync: delete a sentence from the Map docs 2017-07-21 22:00:47 +00:00
syscall syscall: update check for UserNS support for centos 7 2017-07-17 18:18:08 +00:00
testing testing: explain how SkipNow and FailNow stop execution 2017-08-09 11:47:38 +00:00
text text/template: support indexing into *int* maps 2017-08-12 00:21:16 +00:00
time time: add examples for Duration functions 2017-08-11 01:48:45 +00:00
unicode unicode: move scripts from FoldCategories to FoldScripts 2017-06-15 01:05:31 +00:00
unsafe
vendor/golang_org/x vendor: update vendored lif 2017-05-29 21:54:12 +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