golang / go

The Go programming language
https://go.dev
BSD 3-Clause "New" or "Revised" License
124.1k stars 17.68k forks source link

all: `go tool dist test -asan` fails many tests #64257

Closed qiulaidongfeng closed 2 weeks ago

qiulaidongfeng commented 12 months ago

What version of Go are you using (go version)?

$ go version
go version devel go1.22-631a6c2 Fri Nov 17 23:34:11 2023 +0000 linux/amd64

Does this issue reproduce with the latest release?

yes.

What operating system and processor architecture are you using (go env)?

go env Output
$ go env
GO111MODULE=''
GOARCH='amd64'
GOBIN=''
GOCACHE='/root/.cache/go-build'
GOENV='/root/.config/go/env'
GOEXE=''
GOEXPERIMENT=''
GOFLAGS=''
GOHOSTARCH='amd64'
GOHOSTOS='linux'
GOINSECURE=''
GOMODCACHE='/root/go/pkg/mod'
GONOPROXY=''
GONOSUMDB=''
GOOS='linux'
GOPATH='/root/go'
GOPRIVATE=''
GOPROXY='https://goproxy.cn,direct'
GOROOT='/root/.go/gotip'
GOSUMDB='sum.golang.org'
GOTMPDIR=''
GOTOOLCHAIN='auto'
GOTOOLDIR='/root/.go/gotip/pkg/tool/linux_amd64'
GOVCS=''
GOVERSION='devel go1.22-631a6c2 Fri Nov 17 23:34:11 2023 +0000'
GCCGO='gccgo'
GOAMD64='v4'
AR='ar'
CC='gcc'
CXX='g++'
CGO_ENABLED='1'
GOMOD='/dev/null'
GOWORK=''
CGO_CFLAGS='-O2 -g'
CGO_CPPFLAGS=''
CGO_CXXFLAGS='-O2 -g'
CGO_FFLAGS='-O2 -g'
CGO_LDFLAGS='-O2 -g'
PKG_CONFIG='pkg-config'
GOGCCFLAGS='-fPIC -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -Wl,--no-gc-sections -fmessage-length=0 -ffile-prefix-map=/tmp/go-build853797895=/tmp/go-build -gno-record-gcc-switches'

What did you do?

go tool dist test -asan

What did you expect to see?

test pass.

What did you see instead?

output.txt

mauri870 commented 12 months ago

cc @golang/wsl

bcmills commented 12 months ago

(CC @golang/windows)

bcmills commented 12 months ago

This turns out not to be specific to WSL2: this also fails on Linux.

bcmills commented 12 months ago

On linux/amd64 (no WSL involved):

``` ~/go/src$ go tool dist test -asan ##### Test execution environment. # GOARCH: amd64 # CPU: Intel(R) Xeon(R) CPU @ 2.20GHz # GOOS: linux # OS Version: Linux 6.5.6-1rodete4-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.5.6-1rodete4 (2023-10-24) x86_64 ##### Testing packages. ok archive/tar 1.516s ok archive/zip 1.795s --- FAIL: TestReadStringAllocs (0.00s) bufio_test.go:600: Unexpected number of allocations, got 2.000000, want 1 FAIL FAIL bufio 1.080s ok bytes 1.562s ok cmp 0.122s ok compress/bzip2 2.299s ok compress/flate 11.754s ok compress/gzip 44.619s ok compress/lzw 0.348s ok compress/zlib 0.179s ok container/heap 0.044s ok container/list 0.043s ok container/ring 0.045s ok context 0.086s ok crypto 0.042s ok crypto/aes 0.154s ok crypto/cipher 0.189s ok crypto/des 0.112s ok crypto/dsa 0.079s ok crypto/ecdh 1.739s ok crypto/ecdsa 1.082s ok crypto/ed25519 2.820s ok crypto/elliptic 0.162s ok crypto/hmac 0.082s ok crypto/internal/alias 0.070s ok crypto/internal/bigmod 28.146s ok crypto/internal/boring 0.073s ok crypto/internal/boring/bcache 1.060s ok crypto/internal/edwards25519 5.525s ok crypto/internal/edwards25519/field 0.246s ok crypto/internal/nistec 5.307s ok crypto/internal/nistec/fiat 0.116s [no tests to run] ok crypto/md5 0.224s ok crypto/rand 1.513s ok crypto/rc4 2.523s ok crypto/rsa 11.646s ok crypto/sha1 0.236s ok crypto/sha256 0.150s ok crypto/sha512 0.126s ok crypto/subtle 1.436s ok crypto/tls 21.900s ok crypto/x509 10.083s --- FAIL: TestRawBytesAllocs (0.00s) convert_test.go:389: allocs = 15; want 0 --- FAIL: TestGrabConnAllocs (0.00s) sql_test.go:4750: Conn.grabConn allocated 1 objects; want 0 FAIL FAIL database/sql 0.813s ok database/sql/driver 0.064s ok debug/buildinfo 0.093s ok debug/dwarf 0.297s ok debug/elf 4.774s ok debug/gosym 1.261s ok debug/macho 0.103s ok debug/pe 0.309s ok debug/plan9obj 0.064s ok embed 0.094s [no tests to run] ok embed/internal/embedtest 0.059s ok encoding/ascii85 0.078s ok encoding/asn1 0.078s ok encoding/base32 0.163s ok encoding/base64 0.068s ok encoding/binary 0.086s ok encoding/csv 0.140s # runtime # [runtime] runtime/asan_amd64.s:31:1: [amd64] doasanread: unknown variable size; offset 8 is sz+8(FP) runtime/asan_amd64.s:41:1: [amd64] doasanwrite: unknown variable size; offset 8 is sz+8(FP) runtime/asan_amd64.s:51:1: [amd64] asanunpoison: unknown variable size; offset 8 is sz+8(FP) runtime/asan_amd64.s:59:1: [amd64] asanpoison: unknown variable size; offset 8 is sz+8(FP) runtime/asan_amd64.s:67:1: [amd64] asanregisterglobals: unknown variable size; offset 8 is n+8(FP) ok encoding/gob 67.225s ok encoding/hex 0.161s ok encoding/json 3.681s ok encoding/pem 3.624s ok encoding/xml 0.627s ok errors 0.112s ok expvar 0.119s ok flag 0.572s ok fmt 2.787s ok go/ast 0.112s ok go/build 21.627s ok go/build/constraint 0.111s ok go/constant 0.128s ok go/doc 0.971s ok go/doc/comment 7.717s ok go/format 0.197s ok go/importer 1.268s ok go/internal/gccgoimporter 21.512s ok go/internal/gcimporter 7.174s FAIL runtime [build failed] ok go/internal/srcimporter 61.609s ok go/parser 4.314s ok go/printer 3.619s ok go/scanner 0.106s ok go/token 0.386s ok go/types 37.778s ok go/version 0.154s ok hash 0.153s ok hash/adler32 0.158s ok hash/crc32 0.226s ok hash/crc64 0.133s ok hash/fnv 0.121s ok hash/maphash 2.518s ok html 0.121s ok html/template 0.812s ok image 2.770s ok image/color 0.123s ok image/draw 3.380s ok image/gif 4.243s ok image/jpeg 6.613s ok image/png 14.143s ok index/suffixarray 7.604s ok internal/abi 0.245s ok internal/buildcfg 0.082s ok internal/coverage/cformat 0.105s ok internal/coverage/cmerge 0.073s ok internal/coverage/pods 0.083s ok internal/coverage/slicereader 0.071s ok internal/coverage/slicewriter 0.069s ok internal/coverage/test 0.181s ok internal/cpu 0.148s ok internal/dag 0.059s ok internal/diff 0.064s ok internal/fmtsort 0.127s ok internal/fuzz 0.192s ok internal/godebug 3.249s ok internal/godebugs 0.115s ok internal/gover 0.111s ok internal/intern 1.353s ok internal/itoa 0.228s ok internal/platform 2.519s ok internal/poll 0.342s ok internal/profile 0.078s ok internal/reflectlite 0.053s ok internal/safefilepath 0.059s ok internal/saferio 0.117s ok internal/singleflight 0.085s ok internal/testenv 0.431s ok internal/trace 1.315s ok internal/trace/v2 40.792s ok internal/types/errors 1.630s ok internal/unsafeheader 0.073s ok internal/xcoff 0.134s --- FAIL: TestAlloc (14.28s) zstd_test.go:270: got 10 allocs, want 0 FAIL FAIL internal/zstd 15.672s ok io 0.199s ok io/fs 0.617s ok io/ioutil 0.130s ok log 0.102s --- FAIL: TestAttrNoAlloc (0.00s) attr_test.go:36: got 2 allocs, want zero --- FAIL: TestAlloc (0.01s) --- FAIL: TestAlloc/attrs6 (0.00s) logger_test.go:312: got 2 allocs, want 1 --- FAIL: TestAlloc/attrs9 (0.00s) logger_test.go:319: got 2 allocs, want 1 --- FAIL: TestValueNoAlloc (0.00s) value_test.go:102: got 2 allocs, want zero FAIL FAIL log/slog 0.316s ok log/slog/internal/benchmarks 0.075s ok log/slog/internal/buffer 0.076s ok log/syslog 1.362s ok maps 0.170s ok math 0.122s ok math/big 11.096s ok math/bits 0.111s ok math/cmplx 0.108s ok math/rand 3.788s ok math/rand/v2 5.490s ok mime 0.150s ok mime/multipart 12.080s ok mime/quotedprintable 0.199s 2023/11/20 15:14:03 killing splice client after 5 second shutdown timeout --- FAIL: TestAllocs (0.06s) udpsock_test.go:520: WriteMsgUDPAddrPort/ReadMsgUDPAddrPort allocated 7 objects udpsock_test.go:534: WriteToUDPAddrPort/ReadFromUDPAddrPort allocated 2 objects udpsock_test.go:548: WriteTo/ReadFromUDP allocated 3 objects FAIL FAIL net 15.835s ok net/http 33.552s ok net/http/cgi 1.669s ok net/http/cookiejar 0.143s ok net/http/fcgi 0.335s ok net/http/httptest 1.122s ok net/http/httptrace 0.143s ok net/http/httputil 0.900s ok net/http/internal 0.142s ok net/http/internal/ascii 0.142s ok net/http/pprof 5.375s ok net/internal/socktest 0.142s ok net/mail 0.142s ok net/netip 0.933s ok net/rpc 0.241s ok net/rpc/jsonrpc 0.169s ok net/smtp 0.473s ok net/textproto 0.127s ok net/url 0.093s ok os 2.097s ok os/exec 1.052s ok os/exec/internal/fdtest 0.095s ok os/signal 3.886s ok os/user 0.184s ok path 0.095s ok path/filepath 0.122s ok plugin 0.111s --- FAIL: TestDeepEqualAllocs (0.06s) --- FAIL: TestDeepEqualAllocs/int8 (0.00s) all_test.go:1284: DeepEqual(99, 99) allocated 2 times --- FAIL: TestDeepEqualAllocs/[]int8 (0.00s) all_test.go:1284: DeepEqual([99], [99]) allocated 2 times --- FAIL: TestDeepEqualAllocs/int16 (0.00s) all_test.go:1284: DeepEqual(99, 99) allocated 2 times --- FAIL: TestDeepEqualAllocs/[]int16 (0.00s) all_test.go:1284: DeepEqual([99], [99]) allocated 2 times --- FAIL: TestDeepEqualAllocs/int32 (0.00s) all_test.go:1284: DeepEqual(99, 99) allocated 2 times --- FAIL: TestDeepEqualAllocs/[]int32 (0.00s) all_test.go:1284: DeepEqual([99], [99]) allocated 2 times --- FAIL: TestDeepEqualAllocs/int64 (0.00s) all_test.go:1284: DeepEqual(99, 99) allocated 2 times --- FAIL: TestDeepEqualAllocs/[]int64 (0.00s) all_test.go:1284: DeepEqual([99], [99]) allocated 2 times --- FAIL: TestDeepEqualAllocs/int (0.00s) all_test.go:1284: DeepEqual(999999, 999999) allocated 2 times --- FAIL: TestDeepEqualAllocs/[]int (0.00s) all_test.go:1284: DeepEqual([999999], [999999]) allocated 2 times --- FAIL: TestDeepEqualAllocs/uint8 (0.00s) all_test.go:1284: DeepEqual(99, 99) allocated 2 times --- FAIL: TestDeepEqualAllocs/[]uint8 (0.00s) all_test.go:1284: DeepEqual([99], [99]) allocated 2 times --- FAIL: TestDeepEqualAllocs/uint16 (0.00s) all_test.go:1284: DeepEqual(99, 99) allocated 2 times --- FAIL: TestDeepEqualAllocs/[]uint16 (0.00s) all_test.go:1284: DeepEqual([99], [99]) allocated 2 times --- FAIL: TestDeepEqualAllocs/uint32 (0.00s) all_test.go:1284: DeepEqual(99, 99) allocated 2 times --- FAIL: TestDeepEqualAllocs/[]uint32 (0.00s) all_test.go:1284: DeepEqual([99], [99]) allocated 2 times --- FAIL: TestDeepEqualAllocs/uint64 (0.00s) all_test.go:1284: DeepEqual(99, 99) allocated 2 times --- FAIL: TestDeepEqualAllocs/[]uint64 (0.00s) all_test.go:1284: DeepEqual([99], [99]) allocated 2 times --- FAIL: TestDeepEqualAllocs/uint (0.00s) all_test.go:1284: DeepEqual(999999, 999999) allocated 2 times --- FAIL: TestDeepEqualAllocs/[]uint (0.00s) all_test.go:1284: DeepEqual([999999], [999999]) allocated 2 times --- FAIL: TestDeepEqualAllocs/uintptr (0.00s) all_test.go:1284: DeepEqual(999999, 999999) allocated 2 times --- FAIL: TestDeepEqualAllocs/[]uintptr (0.01s) all_test.go:1284: DeepEqual([999999], [999999]) allocated 2 times --- FAIL: TestDeepEqualAllocs/float32 (0.00s) all_test.go:1284: DeepEqual(1.414, 1.414) allocated 2 times --- FAIL: TestDeepEqualAllocs/[]float32 (0.00s) all_test.go:1284: DeepEqual([1.414], [1.414]) allocated 2 times --- FAIL: TestDeepEqualAllocs/float64 (0.00s) all_test.go:1284: DeepEqual(1.414, 1.414) allocated 2 times --- FAIL: TestDeepEqualAllocs/[]float64 (0.00s) all_test.go:1284: DeepEqual([1.414], [1.414]) allocated 2 times --- FAIL: TestDeepEqualAllocs/complex64 (0.00s) all_test.go:1284: DeepEqual((1.414+0i), (1.414+0i)) allocated 2 times --- FAIL: TestDeepEqualAllocs/[]complex64 (0.00s) all_test.go:1284: DeepEqual([(1.414+0i)], [(1.414+0i)]) allocated 2 times --- FAIL: TestDeepEqualAllocs/complex128 (0.00s) all_test.go:1284: DeepEqual((1.414+0i), (1.414+0i)) allocated 2 times --- FAIL: TestDeepEqualAllocs/[]complex128 (0.00s) all_test.go:1284: DeepEqual([(1.414+0i)], [(1.414+0i)]) allocated 2 times --- FAIL: TestDeepEqualAllocs/bool (0.00s) all_test.go:1284: DeepEqual(true, true) allocated 2 times --- FAIL: TestDeepEqualAllocs/[]bool (0.00s) all_test.go:1284: DeepEqual([true], [true]) allocated 2 times --- FAIL: TestDeepEqualAllocs/string (0.00s) all_test.go:1284: DeepEqual(abcdef, abcdef) allocated 2 times --- FAIL: TestDeepEqualAllocs/[]string (0.00s) all_test.go:1284: DeepEqual([abcdef], [abcdef]) allocated 2 times --- FAIL: TestDeepEqualAllocs/[]uint8#01 (0.00s) all_test.go:1284: DeepEqual([97 98 99 100 101 102], [97 98 99 100 101 102]) allocated 2 times --- FAIL: TestDeepEqualAllocs/[][]uint8 (0.00s) all_test.go:1284: DeepEqual([[97 98 99 100 101 102]], [[97 98 99 100 101 102]]) allocated 2 times --- FAIL: TestDeepEqualAllocs/[6]uint8 (0.02s) all_test.go:1284: DeepEqual([97 98 99 97 98 99], [97 98 99 97 98 99]) allocated 2 times --- FAIL: TestDeepEqualAllocs/[][6]uint8 (0.00s) all_test.go:1284: DeepEqual([[97 98 99 97 98 99]], [[97 98 99 97 98 99]]) allocated 2 times --- FAIL: TestMapAlloc (0.23s) all_test.go:7316: allocs per map assignment: want 0 got 2.000000 all_test.go:7331: allocs per map assignment: want at most 10 got 1005.000000 --- FAIL: TestChanAlloc (0.00s) all_test.go:7348: allocs per chan send/recv: want 1 got 2.000000 --- FAIL: TestMapIterReset (0.00s) all_test.go:7706: MapIter.Reset allocated 1 times FAIL FAIL reflect 2.756s ok regexp 11.770s ok regexp/syntax 24.221s ok runtime/cgo 0.140s ok runtime/coverage 0.189s ok runtime/debug 0.394s ok runtime/internal/atomic 0.209s ok runtime/internal/math 0.138s ok runtime/internal/sys 0.139s ok runtime/internal/syscall 0.138s ok runtime/internal/wasitest 0.135s ok runtime/metrics 0.215s --- FAIL: TestMemoryProfiler (0.46s) --- FAIL: TestMemoryProfiler/debug=1 (0.06s) mprof_test.go:132: The entry did not match: 32: 1024 \[32: 1024\] @ 0x[0-9,a-f]+ 0x[0-9,a-f]+ 0x[0-9,a-f]+ 0x[0-9,a-f]+ # 0x[0-9,a-f]+ runtime/pprof\.allocatePersistent1K\+0x[0-9,a-f]+ .*runtime/pprof/mprof_test\.go:47 # 0x[0-9,a-f]+ runtime/pprof\.TestMemoryProfiler\+0x[0-9,a-f]+ .*runtime/pprof/mprof_test\.go:82 Profile: heap profile: 101: 18840 [3183: 8744216] @ heap/2 24: 11520 [24: 11520] @ 0x4467c5 0x446a0f 0x44695f 0x46e0aa # 0x4467c4 runtime.malg+0x24 /usr/local/google/home/bcmills/go/src/runtime/proc.go:4834 # 0x446a0e runtime.newproc1+0x6e /usr/local/google/home/bcmills/go/src/runtime/proc.go:4879 # 0x44695e runtime.newproc.func1+0x1e /usr/local/google/home/bcmills/go/src/runtime/proc.go:4856 # 0x46e0a9 runtime.systemstack+0x49 /usr/local/google/home/bcmills/go/src/runtime/asm_amd64.s:509 1: 1536 [1: 1536] @ 0x441291 0x441c15 0x442318 0x4428ac 0x4445fe 0x444a2f 0x440aed 0x4409f6 0x46dfa5 # 0x441290 runtime.allocm+0x90 /usr/local/google/home/bcmills/go/src/runtime/proc.go:2120 # 0x441c14 runtime.newm+0x34 /usr/local/google/home/bcmills/go/src/runtime/proc.go:2644 # 0x442317 runtime.startm+0x157 /usr/local/google/home/bcmills/go/src/runtime/proc.go:2870 # 0x4428ab runtime.wakep+0xeb /usr/local/google/home/bcmills/go/src/runtime/proc.go:3006 # 0x4445fd runtime.resetspinning+0x3d /usr/local/google/home/bcmills/go/src/runtime/proc.go:3750 # 0x444a2e runtime.schedule+0x10e /usr/local/google/home/bcmills/go/src/runtime/proc.go:3886 # 0x440aec runtime.mstart1+0xcc /usr/local/google/home/bcmills/go/src/runtime/proc.go:1749 # 0x4409f5 runtime.mstart0+0x75 /usr/local/google/home/bcmills/go/src/runtime/proc.go:1699 # 0x46dfa4 runtime.mstart+0x4 /usr/local/google/home/bcmills/go/src/runtime/asm_amd64.s:394 32: 1536 [32: 1536] @ 0x6aa19c 0x6aa16f 0x5a91fb 0x470061 # 0x6aa19b runtime/pprof.allocatePersistent1K+0x2db /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:47 # 0x6aa16e runtime/pprof.TestMemoryProfiler+0x2ae /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:82 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 24: 1152 [24: 1152] @ 0x41f225 0x470061 # 0x41f224 runtime.gcBgMarkWorker+0x64 /usr/local/google/home/bcmills/go/src/runtime/mgc.go:1283 1: 480 [1: 480] @ 0x4467c5 0x43f1d2 0x43f1c8 0x4412c5 0x441c15 0x442318 0x4428ac 0x4445fe 0x444a2f 0x440aed 0x4409f6 0x46dfa5 # 0x4467c4 runtime.malg+0x24 /usr/local/google/home/bcmills/go/src/runtime/proc.go:4834 # 0x43f1d1 runtime.mpreinit+0x111 /usr/local/google/home/bcmills/go/src/runtime/os_linux.go:384 # 0x43f1c7 runtime.mcommoninit+0x107 /usr/local/google/home/bcmills/go/src/runtime/proc.go:913 # 0x4412c4 runtime.allocm+0xc4 /usr/local/google/home/bcmills/go/src/runtime/proc.go:2122 # 0x441c14 runtime.newm+0x34 /usr/local/google/home/bcmills/go/src/runtime/proc.go:2644 # 0x442317 runtime.startm+0x157 /usr/local/google/home/bcmills/go/src/runtime/proc.go:2870 # 0x4428ab runtime.wakep+0xeb /usr/local/google/home/bcmills/go/src/runtime/proc.go:3006 # 0x4445fd runtime.resetspinning+0x3d /usr/local/google/home/bcmills/go/src/runtime/proc.go:3750 # 0x444a2e runtime.schedule+0x10e /usr/local/google/home/bcmills/go/src/runtime/proc.go:3886 # 0x440aec runtime.mstart1+0xcc /usr/local/google/home/bcmills/go/src/runtime/proc.go:1749 # 0x4409f5 runtime.mstart0+0x75 /usr/local/google/home/bcmills/go/src/runtime/proc.go:1699 # 0x46dfa4 runtime.mstart+0x4 /usr/local/google/home/bcmills/go/src/runtime/asm_amd64.s:394 1: 480 [1: 480] @ 0x4467c5 0x4412d8 0x441c15 0x442318 0x4428ac 0x4445fe 0x444a2f 0x440aed 0x4409f6 0x46dfa5 # 0x4467c4 runtime.malg+0x24 /usr/local/google/home/bcmills/go/src/runtime/proc.go:4834 # 0x4412d7 runtime.allocm+0xd7 /usr/local/google/home/bcmills/go/src/runtime/proc.go:2127 # 0x441c14 runtime.newm+0x34 /usr/local/google/home/bcmills/go/src/runtime/proc.go:2644 # 0x442317 runtime.startm+0x157 /usr/local/google/home/bcmills/go/src/runtime/proc.go:2870 # 0x4428ab runtime.wakep+0xeb /usr/local/google/home/bcmills/go/src/runtime/proc.go:3006 # 0x4445fd runtime.resetspinning+0x3d /usr/local/google/home/bcmills/go/src/runtime/proc.go:3750 # 0x444a2e runtime.schedule+0x10e /usr/local/google/home/bcmills/go/src/runtime/proc.go:3886 # 0x440aec runtime.mstart1+0xcc /usr/local/google/home/bcmills/go/src/runtime/proc.go:1749 # 0x4409f5 runtime.mstart0+0x75 /usr/local/google/home/bcmills/go/src/runtime/proc.go:1699 # 0x46dfa4 runtime.mstart+0x4 /usr/local/google/home/bcmills/go/src/runtime/asm_amd64.s:394 1: 320 [1: 320] @ 0x43f2a5 0x4412c5 0x441c15 0x442318 0x4428ac 0x4445fe 0x444a2f 0x440aed 0x4409f6 0x46dfa5 # 0x43f2a4 runtime.mcommoninit+0x1e4 /usr/local/google/home/bcmills/go/src/runtime/proc.go:929 # 0x4412c4 runtime.allocm+0xc4 /usr/local/google/home/bcmills/go/src/runtime/proc.go:2122 # 0x441c14 runtime.newm+0x34 /usr/local/google/home/bcmills/go/src/runtime/proc.go:2644 # 0x442317 runtime.startm+0x157 /usr/local/google/home/bcmills/go/src/runtime/proc.go:2870 # 0x4428ab runtime.wakep+0xeb /usr/local/google/home/bcmills/go/src/runtime/proc.go:3006 # 0x4445fd runtime.resetspinning+0x3d /usr/local/google/home/bcmills/go/src/runtime/proc.go:3750 # 0x444a2e runtime.schedule+0x10e /usr/local/google/home/bcmills/go/src/runtime/proc.go:3886 # 0x440aec runtime.mstart1+0xcc /usr/local/google/home/bcmills/go/src/runtime/proc.go:1749 # 0x4409f5 runtime.mstart0+0x75 /usr/local/google/home/bcmills/go/src/runtime/proc.go:1699 # 0x46dfa4 runtime.mstart+0x4 /usr/local/google/home/bcmills/go/src/runtime/asm_amd64.s:394 1: 320 [1: 320] @ 0x43e7e9 0x446a2f 0x44695f 0x46e0aa # 0x43e7e8 runtime.allgadd+0x68 /usr/local/google/home/bcmills/go/src/runtime/proc.go:621 # 0x446a2e runtime.newproc1+0x8e /usr/local/google/home/bcmills/go/src/runtime/proc.go:4881 # 0x44695e runtime.newproc.func1+0x1e /usr/local/google/home/bcmills/go/src/runtime/proc.go:4856 # 0x46e0a9 runtime.systemstack+0x49 /usr/local/google/home/bcmills/go/src/runtime/asm_amd64.s:509 1: 288 [1: 288] @ 0x41244a 0x477e2c 0x5429b3 0x545652 0x544e73 0x6a9eb1 0x6aa297 0x5a91fb 0x470061 # 0x477e2b sync.(*Map).LoadOrStore+0x46b /usr/local/google/home/bcmills/go/src/sync/map.go:230 # 0x5429b2 reflect.funcLayout+0x9f2 /usr/local/google/home/bcmills/go/src/reflect/type.go:2810 # 0x545651 reflect.Value.call+0x6f1 /usr/local/google/home/bcmills/go/src/reflect/value.go:483 # 0x544e72 reflect.Value.Call+0xb2 /usr/local/google/home/bcmills/go/src/reflect/value.go:380 # 0x6a9eb0 runtime/pprof.allocateReflect+0x30 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:60 # 0x6aa296 runtime/pprof.TestMemoryProfiler+0x3d6 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:83 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 1: 288 [1: 288] @ 0x54298e 0x545652 0x544e73 0x6a9eb1 0x6aa297 0x5a91fb 0x470061 # 0x54298d reflect.funcLayout+0x9cd /usr/local/google/home/bcmills/go/src/reflect/type.go:2810 # 0x545651 reflect.Value.call+0x6f1 /usr/local/google/home/bcmills/go/src/reflect/value.go:483 # 0x544e72 reflect.Value.Call+0xb2 /usr/local/google/home/bcmills/go/src/reflect/value.go:380 # 0x6a9eb0 runtime/pprof.allocateReflect+0x30 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:60 # 0x6aa296 runtime/pprof.TestMemoryProfiler+0x3d6 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:83 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 1: 176 [1: 176] @ 0x4151a7 0x46c213 0x54278a 0x54259e 0x545652 0x544e73 0x6a9eb1 0x6aa297 0x5a91fb 0x470061 # 0x46c212 reflect.addReflectOff+0x112 /usr/local/google/home/bcmills/go/src/runtime/runtime1.go:654 # 0x542789 reflect.resolveReflectName+0x7c9 /usr/local/google/home/bcmills/go/src/reflect/type.go:516 # 0x54259d reflect.funcLayout+0x5dd /usr/local/google/home/bcmills/go/src/reflect/type.go:2804 # 0x545651 reflect.Value.call+0x6f1 /usr/local/google/home/bcmills/go/src/reflect/value.go:483 # 0x544e72 reflect.Value.Call+0xb2 /usr/local/google/home/bcmills/go/src/reflect/value.go:380 # 0x6a9eb0 runtime/pprof.allocateReflect+0x30 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:60 # 0x6aa296 runtime/pprof.TestMemoryProfiler+0x3d6 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:83 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 1: 176 [1: 176] @ 0x4143bf 0x46c1d6 0x54278a 0x54259e 0x545652 0x544e73 0x6a9eb1 0x6aa297 0x5a91fb 0x470061 # 0x46c1d5 reflect.addReflectOff+0xd5 /usr/local/google/home/bcmills/go/src/runtime/runtime1.go:653 # 0x542789 reflect.resolveReflectName+0x7c9 /usr/local/google/home/bcmills/go/src/reflect/type.go:516 # 0x54259d reflect.funcLayout+0x5dd /usr/local/google/home/bcmills/go/src/reflect/type.go:2804 # 0x545651 reflect.Value.call+0x6f1 /usr/local/google/home/bcmills/go/src/reflect/value.go:483 # 0x544e72 reflect.Value.Call+0xb2 /usr/local/google/home/bcmills/go/src/reflect/value.go:380 # 0x6a9eb0 runtime/pprof.allocateReflect+0x30 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:60 # 0x6aa296 runtime/pprof.TestMemoryProfiler+0x3d6 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:83 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 1: 64 [1: 64] @ 0x41185a 0x46c135 0x54278a 0x54259e 0x545652 0x544e73 0x6a9eb1 0x6aa297 0x5a91fb 0x470061 # 0x46c134 reflect.addReflectOff+0x34 /usr/local/google/home/bcmills/go/src/runtime/runtime1.go:645 # 0x542789 reflect.resolveReflectName+0x7c9 /usr/local/google/home/bcmills/go/src/reflect/type.go:516 # 0x54259d reflect.funcLayout+0x5dd /usr/local/google/home/bcmills/go/src/reflect/type.go:2804 # 0x545651 reflect.Value.call+0x6f1 /usr/local/google/home/bcmills/go/src/reflect/value.go:483 # 0x544e72 reflect.Value.Call+0xb2 /usr/local/google/home/bcmills/go/src/reflect/value.go:380 # 0x6a9eb0 runtime/pprof.allocateReflect+0x30 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:60 # 0x6aa296 runtime/pprof.TestMemoryProfiler+0x3d6 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:83 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 1: 64 [1: 64] @ 0x41185a 0x46c15f 0x54278a 0x54259e 0x545652 0x544e73 0x6a9eb1 0x6aa297 0x5a91fb 0x470061 # 0x46c15e reflect.addReflectOff+0x5e /usr/local/google/home/bcmills/go/src/runtime/runtime1.go:646 # 0x542789 reflect.resolveReflectName+0x7c9 /usr/local/google/home/bcmills/go/src/reflect/type.go:516 # 0x54259d reflect.funcLayout+0x5dd /usr/local/google/home/bcmills/go/src/reflect/type.go:2804 # 0x545651 reflect.Value.call+0x6f1 /usr/local/google/home/bcmills/go/src/reflect/value.go:483 # 0x544e72 reflect.Value.Call+0xb2 /usr/local/google/home/bcmills/go/src/reflect/value.go:380 # 0x6a9eb0 runtime/pprof.allocateReflect+0x30 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:60 # 0x6aa296 runtime/pprof.TestMemoryProfiler+0x3d6 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:83 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 1: 64 [1: 64] @ 0x542477 0x545652 0x544e73 0x6a9eb1 0x6aa297 0x5a91fb 0x470061 # 0x542476 reflect.funcLayout+0x4b6 /usr/local/google/home/bcmills/go/src/reflect/type.go:2785 # 0x545651 reflect.Value.call+0x6f1 /usr/local/google/home/bcmills/go/src/reflect/value.go:483 # 0x544e72 reflect.Value.Call+0xb2 /usr/local/google/home/bcmills/go/src/reflect/value.go:380 # 0x6a9eb0 runtime/pprof.allocateReflect+0x30 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:60 # 0x6aa296 runtime/pprof.TestMemoryProfiler+0x3d6 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:83 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 1: 64 [1: 64] @ 0x5427c5 0x545652 0x544e73 0x6a9eb1 0x6aa297 0x5a91fb 0x470061 # 0x5427c4 reflect.funcLayout+0x804 /usr/local/google/home/bcmills/go/src/reflect/type.go:2807 # 0x545651 reflect.Value.call+0x6f1 /usr/local/google/home/bcmills/go/src/reflect/value.go:483 # 0x544e72 reflect.Value.Call+0xb2 /usr/local/google/home/bcmills/go/src/reflect/value.go:380 # 0x6a9eb0 runtime/pprof.allocateReflect+0x30 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:60 # 0x6aa296 runtime/pprof.TestMemoryProfiler+0x3d6 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:83 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 1: 64 [1: 64] @ 0x411910 0x479311 0x477cc5 0x5429b3 0x545652 0x544e73 0x6a9eb1 0x6aa297 0x5a91fb 0x470061 # 0x479310 sync.(*Map).dirtyLocked+0xd0 /usr/local/google/home/bcmills/go/src/sync/map.go:499 # 0x477cc4 sync.(*Map).LoadOrStore+0x304 /usr/local/google/home/bcmills/go/src/sync/map.go:227 # 0x5429b2 reflect.funcLayout+0x9f2 /usr/local/google/home/bcmills/go/src/reflect/type.go:2810 # 0x545651 reflect.Value.call+0x6f1 /usr/local/google/home/bcmills/go/src/reflect/value.go:483 # 0x544e72 reflect.Value.Call+0xb2 /usr/local/google/home/bcmills/go/src/reflect/value.go:380 # 0x6a9eb0 runtime/pprof.allocateReflect+0x30 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:60 # 0x6aa296 runtime/pprof.TestMemoryProfiler+0x3d6 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:83 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 1: 48 [1: 48] @ 0x4034b2 0x542785 0x54259e 0x545652 0x544e73 0x6a9eb1 0x6aa297 0x5a91fb 0x470061 # 0x4034b1 internal/abi.NewName+0x171 /usr/local/google/home/bcmills/go/src/internal/abi/type.go:701 # 0x542784 reflect.newName+0x7c4 /usr/local/google/home/bcmills/go/src/reflect/type.go:411 # 0x54259d reflect.funcLayout+0x5dd /usr/local/google/home/bcmills/go/src/reflect/type.go:2804 # 0x545651 reflect.Value.call+0x6f1 /usr/local/google/home/bcmills/go/src/reflect/value.go:483 # 0x544e72 reflect.Value.Call+0xb2 /usr/local/google/home/bcmills/go/src/reflect/value.go:380 # 0x6a9eb0 runtime/pprof.allocateReflect+0x30 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:60 # 0x6aa296 runtime/pprof.TestMemoryProfiler+0x3d6 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:83 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 1: 48 [1: 48] @ 0x53ab85 0x5423d4 0x545652 0x544e73 0x6a9eb1 0x6aa297 0x5a91fb 0x470061 # 0x53ab84 reflect.newAbiDesc+0x64 /usr/local/google/home/bcmills/go/src/reflect/abi.go:399 # 0x5423d3 reflect.funcLayout+0x413 /usr/local/google/home/bcmills/go/src/reflect/type.go:2782 # 0x545651 reflect.Value.call+0x6f1 /usr/local/google/home/bcmills/go/src/reflect/value.go:483 # 0x544e72 reflect.Value.Call+0xb2 /usr/local/google/home/bcmills/go/src/reflect/value.go:380 # 0x6a9eb0 runtime/pprof.allocateReflect+0x30 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:60 # 0x6aa296 runtime/pprof.TestMemoryProfiler+0x3d6 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:83 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 1: 32 [1: 32] @ 0x542818 0x545652 0x544e73 0x6a9eb1 0x6aa297 0x5a91fb 0x470061 # 0x542817 reflect.funcLayout+0x857 /usr/local/google/home/bcmills/go/src/reflect/type.go:2807 # 0x545651 reflect.Value.call+0x6f1 /usr/local/google/home/bcmills/go/src/reflect/value.go:483 # 0x544e72 reflect.Value.Call+0xb2 /usr/local/google/home/bcmills/go/src/reflect/value.go:380 # 0x6a9eb0 runtime/pprof.allocateReflect+0x30 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:60 # 0x6aa296 runtime/pprof.TestMemoryProfiler+0x3d6 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:83 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 1: 32 [1: 32] @ 0x542972 0x545652 0x544e73 0x6a9eb1 0x6aa297 0x5a91fb 0x470061 # 0x542971 reflect.funcLayout+0x9b1 /usr/local/google/home/bcmills/go/src/reflect/type.go:2810 # 0x545651 reflect.Value.call+0x6f1 /usr/local/google/home/bcmills/go/src/reflect/value.go:483 # 0x544e72 reflect.Value.Call+0xb2 /usr/local/google/home/bcmills/go/src/reflect/value.go:380 # 0x6a9eb0 runtime/pprof.allocateReflect+0x30 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:60 # 0x6aa296 runtime/pprof.TestMemoryProfiler+0x3d6 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:83 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 1: 32 [1: 32] @ 0x477cd1 0x5429b3 0x545652 0x544e73 0x6a9eb1 0x6aa297 0x5a91fb 0x470061 # 0x477cd0 sync.(*Map).LoadOrStore+0x310 /usr/local/google/home/bcmills/go/src/sync/map.go:228 # 0x5429b2 reflect.funcLayout+0x9f2 /usr/local/google/home/bcmills/go/src/reflect/type.go:2810 # 0x545651 reflect.Value.call+0x6f1 /usr/local/google/home/bcmills/go/src/reflect/value.go:483 # 0x544e72 reflect.Value.Call+0xb2 /usr/local/google/home/bcmills/go/src/reflect/value.go:380 # 0x6a9eb0 runtime/pprof.allocateReflect+0x30 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:60 # 0x6aa296 runtime/pprof.TestMemoryProfiler+0x3d6 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:83 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 1: 32 [1: 32] @ 0x477d51 0x5429b3 0x545652 0x544e73 0x6a9eb1 0x6aa297 0x5a91fb 0x470061 # 0x477d50 sync.(*Map).LoadOrStore+0x390 /usr/local/google/home/bcmills/go/src/sync/map.go:230 # 0x5429b2 reflect.funcLayout+0x9f2 /usr/local/google/home/bcmills/go/src/reflect/type.go:2810 # 0x545651 reflect.Value.call+0x6f1 /usr/local/google/home/bcmills/go/src/reflect/value.go:483 # 0x544e72 reflect.Value.Call+0xb2 /usr/local/google/home/bcmills/go/src/reflect/value.go:380 # 0x6a9eb0 runtime/pprof.allocateReflect+0x30 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:60 # 0x6aa296 runtime/pprof.TestMemoryProfiler+0x3d6 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:83 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 1: 24 [1: 24] @ 0x477db4 0x477d46 0x5429b3 0x545652 0x544e73 0x6a9eb1 0x6aa297 0x5a91fb 0x470061 # 0x477db3 sync.newEntry+0x3f3 /usr/local/google/home/bcmills/go/src/sync/map.go:105 # 0x477d45 sync.(*Map).LoadOrStore+0x385 /usr/local/google/home/bcmills/go/src/sync/map.go:230 # 0x5429b2 reflect.funcLayout+0x9f2 /usr/local/google/home/bcmills/go/src/reflect/type.go:2810 # 0x545651 reflect.Value.call+0x6f1 /usr/local/google/home/bcmills/go/src/reflect/value.go:483 # 0x544e72 reflect.Value.Call+0xb2 /usr/local/google/home/bcmills/go/src/reflect/value.go:380 # 0x6a9eb0 runtime/pprof.allocateReflect+0x30 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:60 # 0x6aa296 runtime/pprof.TestMemoryProfiler+0x3d6 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:83 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 0: 0 [0: 0] @ 0x5a13dc 0x59f977 0x5aa566 0x6aaf88 0x5a91fb 0x470061 # 0x5a13db testing.rewrite+0x21b /usr/local/google/home/bcmills/go/src/testing/match.go:294 # 0x59f976 testing.(*matcher).fullName+0x136 /usr/local/google/home/bcmills/go/src/testing/match.go:90 # 0x5aa565 testing.(*T).Run+0xc5 /usr/local/google/home/bcmills/go/src/testing/testing.go:1702 # 0x6aaf87 runtime/pprof.TestMemoryProfiler+0x10c7 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:124 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 0: 0 [0: 0] @ 0x457932 0x457325 0x457565 0x5a0cf3 0x59f9ca 0x5aa566 0x6aaf88 0x5a91fb 0x470061 # 0x5a0cf2 testing.(*matcher).unique+0x52 /usr/local/google/home/bcmills/go/src/testing/match.go:221 # 0x59f9c9 testing.(*matcher).fullName+0x189 /usr/local/google/home/bcmills/go/src/testing/match.go:90 # 0x5aa565 testing.(*T).Run+0xc5 /usr/local/google/home/bcmills/go/src/testing/testing.go:1702 # 0x6aaf87 runtime/pprof.TestMemoryProfiler+0x10c7 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:124 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 0: 0 [0: 0] @ 0x6aa9fe 0x5a91fb 0x470061 # 0x6aa9fd runtime/pprof.TestMemoryProfiler+0xb3d /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:100 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 0: 0 [0: 0] @ 0x6aa8c6 0x5a91fb 0x470061 # 0x6aa8c5 runtime/pprof.TestMemoryProfiler+0xa05 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:94 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 0: 0 [0: 0] @ 0x6aa8b2 0x5a91fb 0x470061 # 0x6aa8b1 runtime/pprof.TestMemoryProfiler+0x9f1 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:90 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 0: 0 [0: 0] @ 0x55a9c5 0x6aa899 0x5a91fb 0x470061 # 0x55a9c4 fmt.Sprintf+0x84 /usr/local/google/home/bcmills/go/src/fmt/print.go:240 # 0x6aa898 runtime/pprof.TestMemoryProfiler+0x9d8 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:119 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 0: 0 [0: 0] @ 0x6aa83f 0x5a91fb 0x470061 # 0x6aa83e runtime/pprof.TestMemoryProfiler+0x97e /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:121 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 0: 0 [0: 0] @ 0x55a9c5 0x6aa7a9 0x5a91fb 0x470061 # 0x55a9c4 fmt.Sprintf+0x84 /usr/local/google/home/bcmills/go/src/fmt/print.go:240 # 0x6aa7a8 runtime/pprof.TestMemoryProfiler+0x8e8 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:113 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 0: 0 [0: 0] @ 0x6aa74f 0x5a91fb 0x470061 # 0x6aa74e runtime/pprof.TestMemoryProfiler+0x88e /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:116 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 0: 0 [0: 0] @ 0x55a9c5 0x6aa6b9 0x5a91fb 0x470061 # 0x55a9c4 fmt.Sprintf+0x84 /usr/local/google/home/bcmills/go/src/fmt/print.go:240 # 0x6aa6b8 runtime/pprof.TestMemoryProfiler+0x7f8 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:107 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 0: 0 [0: 0] @ 0x6aa65f 0x5a91fb 0x470061 # 0x6aa65e runtime/pprof.TestMemoryProfiler+0x79e /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:110 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 0: 0 [0: 0] @ 0x55a9c5 0x6aa5c9 0x5a91fb 0x470061 # 0x55a9c4 fmt.Sprintf+0x84 /usr/local/google/home/bcmills/go/src/fmt/print.go:240 # 0x6aa5c8 runtime/pprof.TestMemoryProfiler+0x708 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:101 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 0: 0 [0: 0] @ 0x6aa56f 0x5a91fb 0x470061 # 0x6aa56e runtime/pprof.TestMemoryProfiler+0x6ae /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:104 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 0: 0 [0: 0] @ 0x6aa515 0x5a91fb 0x470061 # 0x6aa514 runtime/pprof.TestMemoryProfiler+0x654 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:104 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 0: 0 [0: 0] @ 0x55a9c5 0x6aa4cf 0x5a91fb 0x470061 # 0x55a9c4 fmt.Sprintf+0x84 /usr/local/google/home/bcmills/go/src/fmt/print.go:240 # 0x6aa4ce runtime/pprof.TestMemoryProfiler+0x60e /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:95 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 0: 0 [0: 0] @ 0x5640b8 0x56402d 0x55a99e 0x6aa4cf 0x5a91fb 0x470061 # 0x5640b7 fmt.(*buffer).writeString+0x197 /usr/local/google/home/bcmills/go/src/fmt/print.go:108 # 0x56402c fmt.(*pp).doPrintf+0x10c /usr/local/google/home/bcmills/go/src/fmt/print.go:1032 # 0x55a99d fmt.Sprintf+0x5d /usr/local/google/home/bcmills/go/src/fmt/print.go:239 # 0x6aa4ce runtime/pprof.TestMemoryProfiler+0x60e /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:95 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 0: 0 [0: 0] @ 0x5566d3 0x55667b 0x557e71 0x55c238 0x55f389 0x5644e5 0x55a99e 0x6aa4cf 0x5a91fb 0x470061 # 0x5566d2 fmt.(*buffer).write+0xd2 /usr/local/google/home/bcmills/go/src/fmt/print.go:104 # 0x55667a fmt.(*fmt).pad+0x7a /usr/local/google/home/bcmills/go/src/fmt/format.go:92 # 0x557e70 fmt.(*fmt).fmtInteger+0x9d0 /usr/local/google/home/bcmills/go/src/fmt/format.go:319 # 0x55c237 fmt.(*pp).fmtInteger+0x1d7 /usr/local/google/home/bcmills/go/src/fmt/print.go:427 # 0x55f388 fmt.(*pp).printArg+0x5e8 /usr/local/google/home/bcmills/go/src/fmt/print.go:719 # 0x5644e4 fmt.(*pp).doPrintf+0x5c4 /usr/local/google/home/bcmills/go/src/fmt/print.go:1075 # 0x55a99d fmt.Sprintf+0x5d /usr/local/google/home/bcmills/go/src/fmt/print.go:239 # 0x6aa4ce runtime/pprof.TestMemoryProfiler+0x60e /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:95 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 0: 0 [0: 0] @ 0x5640b8 0x56402d 0x55a99e 0x6aa4cf 0x5a91fb 0x470061 # 0x5640b7 fmt.(*buffer).writeString+0x197 /usr/local/google/home/bcmills/go/src/fmt/print.go:108 # 0x56402c fmt.(*pp).doPrintf+0x10c /usr/local/google/home/bcmills/go/src/fmt/print.go:1032 # 0x55a99d fmt.Sprintf+0x5d /usr/local/google/home/bcmills/go/src/fmt/print.go:239 # 0x6aa4ce runtime/pprof.TestMemoryProfiler+0x60e /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:95 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 0: 0 [0: 0] @ 0x5566d3 0x55667b 0x557e71 0x55c238 0x55f389 0x5644e5 0x55a99e 0x6aa4cf 0x5a91fb 0x470061 # 0x5566d2 fmt.(*buffer).write+0xd2 /usr/local/google/home/bcmills/go/src/fmt/print.go:104 # 0x55667a fmt.(*fmt).pad+0x7a /usr/local/google/home/bcmills/go/src/fmt/format.go:92 # 0x557e70 fmt.(*fmt).fmtInteger+0x9d0 /usr/local/google/home/bcmills/go/src/fmt/format.go:319 # 0x55c237 fmt.(*pp).fmtInteger+0x1d7 /usr/local/google/home/bcmills/go/src/fmt/print.go:427 # 0x55f388 fmt.(*pp).printArg+0x5e8 /usr/local/google/home/bcmills/go/src/fmt/print.go:719 # 0x5644e4 fmt.(*pp).doPrintf+0x5c4 /usr/local/google/home/bcmills/go/src/fmt/print.go:1075 # 0x55a99d fmt.Sprintf+0x5d /usr/local/google/home/bcmills/go/src/fmt/print.go:239 # 0x6aa4ce runtime/pprof.TestMemoryProfiler+0x60e /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:95 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 0: 0 [0: 0] @ 0x55593a 0x479e3f 0x55a29e 0x55a978 0x6aa4cf 0x5a91fb 0x470061 # 0x555939 fmt.init.func1+0x19 /usr/local/google/home/bcmills/go/src/fmt/print.go:147 # 0x479e3e sync.(*Pool).Get+0x11e /usr/local/google/home/bcmills/go/src/sync/pool.go:151 # 0x55a29d fmt.newPrinter+0x1d /usr/local/google/home/bcmills/go/src/fmt/print.go:152 # 0x55a977 fmt.Sprintf+0x37 /usr/local/google/home/bcmills/go/src/fmt/print.go:238 # 0x6aa4ce runtime/pprof.TestMemoryProfiler+0x60e /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:95 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 0: 0 [0: 0] @ 0x47a5ac 0x47a2d7 0x479d3c 0x55a29e 0x55a978 0x6aa4cf 0x5a91fb 0x470061 # 0x47a5ab sync.(*Pool).pinSlow+0x28b /usr/local/google/home/bcmills/go/src/sync/pool.go:237 # 0x47a2d6 sync.(*Pool).pin+0xd6 /usr/local/google/home/bcmills/go/src/sync/pool.go:216 # 0x479d3b sync.(*Pool).Get+0x1b /usr/local/google/home/bcmills/go/src/sync/pool.go:131 # 0x55a29d fmt.newPrinter+0x1d /usr/local/google/home/bcmills/go/src/fmt/print.go:152 # 0x55a977 fmt.Sprintf+0x37 /usr/local/google/home/bcmills/go/src/fmt/print.go:238 # 0x6aa4ce runtime/pprof.TestMemoryProfiler+0x60e /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:95 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 0: 0 [0: 0] @ 0x47a4b9 0x47a2d7 0x479d3c 0x55a29e 0x55a978 0x6aa4cf 0x5a91fb 0x470061 # 0x47a4b8 sync.(*Pool).pinSlow+0x198 /usr/local/google/home/bcmills/go/src/sync/pool.go:233 # 0x47a2d6 sync.(*Pool).pin+0xd6 /usr/local/google/home/bcmills/go/src/sync/pool.go:216 # 0x479d3b sync.(*Pool).Get+0x1b /usr/local/google/home/bcmills/go/src/sync/pool.go:131 # 0x55a29d fmt.newPrinter+0x1d /usr/local/google/home/bcmills/go/src/fmt/print.go:152 # 0x55a977 fmt.Sprintf+0x37 /usr/local/google/home/bcmills/go/src/fmt/print.go:238 # 0x6aa4ce runtime/pprof.TestMemoryProfiler+0x60e /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:95 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 0: 0 [0: 0] @ 0x6aa475 0x5a91fb 0x470061 # 0x6aa474 runtime/pprof.TestMemoryProfiler+0x5b4 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:98 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 0: 0 [0: 0] @ 0x6aa3bf 0x5a91fb 0x470061 # 0x6aa3be runtime/pprof.TestMemoryProfiler+0x4fe /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:98 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 0: 0 [1: 48] @ 0x6a9e13 0x545dee 0x544e73 0x6a9eb1 0x6aa297 0x5a91fb 0x470061 # 0x6a9e12 runtime/pprof.allocateReflectTransient+0x32 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:55 # 0x545ded reflect.Value.call+0xe8d /usr/local/google/home/bcmills/go/src/reflect/value.go:596 # 0x544e72 reflect.Value.Call+0xb2 /usr/local/google/home/bcmills/go/src/reflect/value.go:380 # 0x6a9eb0 runtime/pprof.allocateReflect+0x30 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:60 # 0x6aa296 runtime/pprof.TestMemoryProfiler+0x3d6 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:83 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 0: 0 [1: 2105344] @ 0x6a9e06 0x545dee 0x544e73 0x6a9eb1 0x6aa297 0x5a91fb 0x470061 # 0x6a9e05 runtime/pprof.allocateReflectTransient+0x25 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:55 # 0x545ded reflect.Value.call+0xe8d /usr/local/google/home/bcmills/go/src/reflect/value.go:596 # 0x544e72 reflect.Value.Call+0xb2 /usr/local/google/home/bcmills/go/src/reflect/value.go:380 # 0x6a9eb0 runtime/pprof.allocateReflect+0x30 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:60 # 0x6aa296 runtime/pprof.TestMemoryProfiler+0x3d6 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:83 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 0: 0 [0: 0] @ 0x6aac7b 0x5a91fb 0x470061 # 0x6aac7a runtime/pprof.TestMemoryProfiler+0xdba /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:112 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 0: 0 [0: 0] @ 0x6aadce 0x5a91fb 0x470061 # 0x6aadcd runtime/pprof.TestMemoryProfiler+0xf0d /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:118 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 0: 0 [0: 0] @ 0x6aaeee 0x5a91fb 0x470061 # 0x6aaeed runtime/pprof.TestMemoryProfiler+0x102d /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:124 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 0: 0 [0: 0] @ 0x6947f1 0x6946a5 0x691d99 0x6abeb6 0x5a91fb 0x470061 # 0x6947f0 runtime/pprof.writeHeapInternal+0xb0 /usr/local/google/home/bcmills/go/src/runtime/pprof/pprof.go:562 # 0x6946a4 runtime/pprof.writeHeap+0x24 /usr/local/google/home/bcmills/go/src/runtime/pprof/pprof.go:532 # 0x691d98 runtime/pprof.(*Profile).WriteTo+0x1b8 /usr/local/google/home/bcmills/go/src/runtime/pprof/pprof.go:329 # 0x6abeb5 runtime/pprof.TestMemoryProfiler.func2+0xb5 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:126 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 0: 0 [0: 0] @ 0x5a1555 0x59f977 0x5aa566 0x6aaf88 0x5a91fb 0x470061 # 0x5a1554 testing.rewrite+0x394 /usr/local/google/home/bcmills/go/src/testing/match.go:297 # 0x59f976 testing.(*matcher).fullName+0x136 /usr/local/google/home/bcmills/go/src/testing/match.go:90 # 0x5aa565 testing.(*T).Run+0xc5 /usr/local/google/home/bcmills/go/src/testing/testing.go:1702 # 0x6aaf87 runtime/pprof.TestMemoryProfiler+0x10c7 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:124 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 0: 0 [0: 0] @ 0x6aab3c 0x5a91fb 0x470061 # 0x6aab3b runtime/pprof.TestMemoryProfiler+0xc7b /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:106 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 0: 0 [0: 0] @ 0x41648c 0x5a0da7 0x59f9ca 0x5aa566 0x6aaf88 0x5a91fb 0x470061 # 0x5a0da6 testing.(*matcher).unique+0x106 /usr/local/google/home/bcmills/go/src/testing/match.go:228 # 0x59f9c9 testing.(*matcher).fullName+0x189 /usr/local/google/home/bcmills/go/src/testing/match.go:90 # 0x5aa565 testing.(*T).Run+0xc5 /usr/local/google/home/bcmills/go/src/testing/testing.go:1702 # 0x6aaf87 runtime/pprof.TestMemoryProfiler+0x10c7 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:124 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 0: 0 [0: 0] @ 0x56d053 0x59fa8f 0x59fa5b 0x5aa566 0x6aaf88 0x5a91fb 0x470061 # 0x56d052 strings.genSplit+0x92 /usr/local/google/home/bcmills/go/src/strings/strings.go:249 # 0x59fa8e strings.Split+0x24e /usr/local/google/home/bcmills/go/src/strings/strings.go:307 # 0x59fa5a testing.(*matcher).fullName+0x21a /usr/local/google/home/bcmills/go/src/testing/match.go:97 # 0x5aa565 testing.(*T).Run+0xc5 /usr/local/google/home/bcmills/go/src/testing/testing.go:1702 # 0x6aaf87 runtime/pprof.TestMemoryProfiler+0x10c7 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:124 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 0: 0 [0: 0] @ 0x5aa5f2 0x6aaf88 0x5a91fb 0x470061 # 0x5aa5f1 testing.(*T).Run+0x151 /usr/local/google/home/bcmills/go/src/testing/testing.go:1709 # 0x6aaf87 runtime/pprof.TestMemoryProfiler+0x10c7 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:124 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 0: 0 [0: 0] @ 0x5aa665 0x6aaf88 0x5a91fb 0x470061 # 0x5aa664 testing.(*T).Run+0x1c4 /usr/local/google/home/bcmills/go/src/testing/testing.go:1713 # 0x6aaf87 runtime/pprof.TestMemoryProfiler+0x10c7 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:124 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 0: 0 [0: 0] @ 0x5aa67e 0x6aaf88 0x5a91fb 0x470061 # 0x5aa67d testing.(*T).Run+0x1dd /usr/local/google/home/bcmills/go/src/testing/testing.go:1714 # 0x6aaf87 runtime/pprof.TestMemoryProfiler+0x10c7 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:124 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 0: 0 [0: 0] @ 0x5aa6a5 0x6aaf88 0x5a91fb 0x470061 # 0x5aa6a4 testing.(*T).Run+0x204 /usr/local/google/home/bcmills/go/src/testing/testing.go:1711 # 0x6aaf87 runtime/pprof.TestMemoryProfiler+0x10c7 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:124 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 0: 0 [0: 0] @ 0x5aac06 0x6aaf88 0x5a91fb 0x470061 # 0x5aac05 testing.(*T).Run+0x765 /usr/local/google/home/bcmills/go/src/testing/testing.go:1728 # 0x6aaf87 runtime/pprof.TestMemoryProfiler+0x10c7 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:124 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 0: 0 [0: 0] @ 0x5aac25 0x6aaf88 0x5a91fb 0x470061 # 0x5aac24 testing.(*T).Run+0x784 /usr/local/google/home/bcmills/go/src/testing/testing.go:1728 # 0x6aaf87 runtime/pprof.TestMemoryProfiler+0x10c7 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:124 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 0: 0 [0: 0] @ 0x4785ce 0x5aac4a 0x5aabba 0x6aaf88 0x5a91fb 0x470061 # 0x4785cd sync.(*Map).Swap+0x4d /usr/local/google/home/bcmills/go/src/sync/map.go:330 # 0x5aac49 sync.(*Map).Store+0x7a9 /usr/local/google/home/bcmills/go/src/sync/map.go:155 # 0x5aabb9 testing.(*T).Run+0x719 /usr/local/google/home/bcmills/go/src/testing/testing.go:1728 # 0x6aaf87 runtime/pprof.TestMemoryProfiler+0x10c7 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:124 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 0: 0 [0: 0] @ 0x478a11 0x5aac4a 0x5aabba 0x6aaf88 0x5a91fb 0x470061 # 0x478a10 sync.(*Map).Swap+0x490 /usr/local/google/home/bcmills/go/src/sync/map.go:365 # 0x5aac49 sync.(*Map).Store+0x7a9 /usr/local/google/home/bcmills/go/src/sync/map.go:155 # 0x5aabb9 testing.(*T).Run+0x719 /usr/local/google/home/bcmills/go/src/testing/testing.go:1728 # 0x6aaf87 runtime/pprof.TestMemoryProfiler+0x10c7 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:124 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 0: 0 [1: 352] @ 0x5455c5 0x544e73 0x6a9eb1 0x6aa297 0x5a91fb 0x470061 # 0x5455c4 reflect.Value.call+0x664 /usr/local/google/home/bcmills/go/src/reflect/value.go:480 # 0x544e72 reflect.Value.Call+0xb2 /usr/local/google/home/bcmills/go/src/reflect/value.go:380 # 0x6a9eb0 runtime/pprof.allocateReflect+0x30 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:60 # 0x6aa296 runtime/pprof.TestMemoryProfiler+0x3d6 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:83 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 0: 0 [1: 32] @ 0x5441c8 0x6a9ea5 0x6a9e8f 0x6aa297 0x5a91fb 0x470061 # 0x5441c7 reflect.unpackEface+0x27 /usr/local/google/home/bcmills/go/src/reflect/value.go:156 # 0x6a9ea4 reflect.ValueOf+0x24 /usr/local/google/home/bcmills/go/src/reflect/value.go:3258 # 0x6a9e8e runtime/pprof.allocateReflect+0xe /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:59 # 0x6aa296 runtime/pprof.TestMemoryProfiler+0x3d6 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:83 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 0: 0 [0: 0] @ 0x478aa8 0x478a06 0x5aac4a 0x5aabba 0x6aaf88 0x5a91fb 0x470061 # 0x478aa7 sync.newEntry+0x527 /usr/local/google/home/bcmills/go/src/sync/map.go:105 # 0x478a05 sync.(*Map).Swap+0x485 /usr/local/google/home/bcmills/go/src/sync/map.go:365 # 0x5aac49 sync.(*Map).Store+0x7a9 /usr/local/google/home/bcmills/go/src/sync/map.go:155 # 0x5aabb9 testing.(*T).Run+0x719 /usr/local/google/home/bcmills/go/src/testing/testing.go:1728 # 0x6aaf87 runtime/pprof.TestMemoryProfiler+0x10c7 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:124 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 0: 0 [1: 48] @ 0x6aa112 0x6aa0ef 0x5a91fb 0x470061 # 0x6aa111 runtime/pprof.allocateTransient2MInline+0x251 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:34 # 0x6aa0ee runtime/pprof.TestMemoryProfiler+0x22e /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:81 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 0: 0 [1: 2105344] @ 0x6aa105 0x6aa0ef 0x5a91fb 0x470061 # 0x6aa104 runtime/pprof.allocateTransient2MInline+0x244 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:34 # 0x6aa0ee runtime/pprof.TestMemoryProfiler+0x22e /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:81 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 0: 0 [1: 48] @ 0x6a9d73 0x6aa0ee 0x5a91fb 0x470061 # 0x6a9d72 runtime/pprof.allocateTransient2M+0x32 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:30 # 0x6aa0ed runtime/pprof.TestMemoryProfiler+0x22d /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:80 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 0: 0 [0: 0] @ 0x5aac5a 0x6aaf88 0x5a91fb 0x470061 # 0x5aac59 testing.(*T).Run+0x7b9 /usr/local/google/home/bcmills/go/src/testing/testing.go:1735 # 0x6aaf87 runtime/pprof.TestMemoryProfiler+0x10c7 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:124 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 0: 0 [1: 192] @ 0x43e7e9 0x446a2f 0x44695f 0x46e0aa # 0x43e7e8 runtime.allgadd+0x68 /usr/local/google/home/bcmills/go/src/runtime/proc.go:621 # 0x446a2e runtime.newproc1+0x8e /usr/local/google/home/bcmills/go/src/runtime/proc.go:4881 # 0x44695e runtime.newproc.func1+0x1e /usr/local/google/home/bcmills/go/src/runtime/proc.go:4856 # 0x46e0a9 runtime.systemstack+0x49 /usr/local/google/home/bcmills/go/src/runtime/asm_amd64.s:509 0: 0 [0: 0] @ 0x43e069 0x4092a5 0x409072 0x5aad55 0x6aaf88 0x5a91fb 0x470061 # 0x5aad54 testing.(*T).Run+0x8b4 /usr/local/google/home/bcmills/go/src/testing/testing.go:1736 # 0x6aaf87 runtime/pprof.TestMemoryProfiler+0x10c7 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:124 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 0: 0 [0: 0] @ 0x5a8651 0x5a85dc 0x5a9054 0x470061 # 0x5a8650 testing.pcToName+0x30 /usr/local/google/home/bcmills/go/src/testing/testing.go:1432 # 0x5a85db testing.callerName+0x3b /usr/local/google/home/bcmills/go/src/testing/testing.go:1428 # 0x5a9053 testing.tRunner+0x33 /usr/local/google/home/bcmills/go/src/testing/testing.go:1540 0: 0 [0: 0] @ 0x45870e 0x5a8685 0x5a85dc 0x5a9054 0x470061 # 0x5a8684 testing.pcToName+0x64 /usr/local/google/home/bcmills/go/src/testing/testing.go:1433 # 0x5a85db testing.callerName+0x3b /usr/local/google/home/bcmills/go/src/testing/testing.go:1428 # 0x5a9053 testing.tRunner+0x33 /usr/local/google/home/bcmills/go/src/testing/testing.go:1540 0: 0 [0: 0] @ 0x6abe46 0x5a91fb 0x470061 # 0x6abe45 runtime/pprof.TestMemoryProfiler.func2+0x45 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:125 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 0: 0 [0: 0] @ 0x41185a 0x690f5c 0x6915d6 0x6abe9d 0x5a91fb 0x470061 # 0x690f5b runtime/pprof.lockProfiles+0x5b /usr/local/google/home/bcmills/go/src/runtime/pprof/pprof.go:186 # 0x6915d5 runtime/pprof.Lookup+0x35 /usr/local/google/home/bcmills/go/src/runtime/pprof/pprof.go:226 # 0x6abe9c runtime/pprof.TestMemoryProfiler.func2+0x9c /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:126 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 0: 0 [0: 0] @ 0x41648c 0x690f7c 0x6915d6 0x6abe9d 0x5a91fb 0x470061 # 0x690f7b runtime/pprof.lockProfiles+0x7b /usr/local/google/home/bcmills/go/src/runtime/pprof/pprof.go:186 # 0x6915d5 runtime/pprof.Lookup+0x35 /usr/local/google/home/bcmills/go/src/runtime/pprof/pprof.go:226 # 0x6abe9c runtime/pprof.TestMemoryProfiler.func2+0x9c /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:126 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 0: 0 [1: 2105344] @ 0x6a9d66 0x6aa0ee 0x5a91fb 0x470061 # 0x6a9d65 runtime/pprof.allocateTransient2M+0x25 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:30 # 0x6aa0ed runtime/pprof.TestMemoryProfiler+0x22d /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:80 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 0: 0 [1024: 1179648] @ 0x6aa05f 0x6aa030 0x5a91fb 0x470061 # 0x6aa05e runtime/pprof.allocateTransient1M+0x19e /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:24 # 0x6aa02f runtime/pprof.TestMemoryProfiler+0x16f /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:79 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 0: 0 [1024: 49152] @ 0x6a9fd2 0x5a91fb 0x470061 # 0x6a9fd1 runtime/pprof.TestMemoryProfiler+0x111 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:75 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 0: 0 [1024: 1179648] @ 0x6a9fc5 0x5a91fb 0x470061 # 0x6a9fc4 runtime/pprof.TestMemoryProfiler+0x104 /usr/local/google/home/bcmills/go/src/runtime/pprof/mprof_test.go:75 # 0x5a91fa testing.tRunner+0x1da /usr/local/google/home/bcmills/go/src/testing/testing.go:1682 0: 0 [1: 176] @ 0x607449 0x60733a 0x602d70 0x621458 0x621453 0x622acc 0x622ac0 0x64b88e 0x479b08 0x64b535 0x64b4e1 0x64b4e0 0x64c6f3 0x44b488 0x43da30 0x43d920 0x470061 # 0x607448 regexp/syntax.(*parser).newRegexp+0x188 /usr/local/google/home/bcmills/go/src/regexp/syntax/parse.go:146 # 0x607339 regexp/syntax.(*parser).parseClass+0x79 /usr/local/google/home/bcmills/go/src/regexp/syntax/parse.go:1740 # 0x602d6f regexp/syntax.parse+0x10ef /usr/local/google/home/bcmills/go/src/regexp/syntax/parse.go:977 # 0x621457 regexp/syntax.Parse+0x37 /usr/local/google/home/bcmills/go/src/regexp/syntax/parse.go:889 # 0x621452 regexp.compile+0x32 /usr/local/google/home/bcmills/go/src/regexp/regexp.go:172 # 0x622acb regexp.Compile+0x2b /usr/local/google/home/bcmills/go/src/regexp/regexp.go:135 # 0x622abf regexp.MustCompile+0x1f /usr/local/google/home/bcmills/go/src/regexp/regexp.go:315 # 0x64b88d internal/lazyregexp.(*Regexp).build+0x4d /usr/local/google/home/bcmills/go/src/internal/lazyregexp/lazyre.go:30 # 0x479b07 sync.(*Once).doSlow+0x107 /usr/local/google/home/bcmills/go/src/sync/once.go:74 # 0x64b534 sync.(*Once).Do+0x114 /usr/local/google/home/bcmills/go/src/sync/once.go:65 # 0x64b4e0 internal/lazyregexp.(*Regexp).re+0xc0 /usr/local/google/home/bcmills/go/src/internal/lazyregexp/lazyre.go:25 # 0x64b4df internal/lazyregexp.New+0xbf /usr/local/google/home/bcmills/go/src/internal/lazyregexp/lazyre.go:75 # 0x64c6f2 internal/profile.init+0xb92 /usr/local/google/home/bcmills/go/src/internal/profile/profile.go:195 # 0x44b487 runtime.doInit1+0xe7 /usr/local/google/home/bcmills/go/src/runtime/proc.go:7143 # 0x43da2f runtime.doInit+0x34f /usr/local/google/home/bcmills/go/src/runtime/proc.go:7110 # 0x43d91f runtime.main+0x23f /usr/local/google/home/bcmills/go/src/runtime/proc.go:253 # runtime.MemStats # Alloc = 396544 # TotalAlloc = 9228096 # Sys = 17126664 # Lookups = 0 # Mallocs = 4531 # Frees = 3809 # HeapAlloc = 396544 # HeapSys = 12124160 # HeapIdle = 11157504 # HeapInuse = 966656 # HeapReleased = 3923968 # HeapObjects = 722 # Stack = 458752 / 458752 # MSpan = 45280 / 81600 # MCache = 28800 / 31200 # BuckHashSys = 1463488 # GCSys = 2082344 # OtherSys = 885120 # NextGC = 4194304 # LastGC = 1700511255973606335 # PauseNs = [943428 148276 79021 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0] # PauseEnd = [1700511255968403245 1700511255972240978 1700511255973606335 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0] # NumGC = 3 # NumForcedGC = 1 # GCCPUFraction = 0.0356789655858281 # DebugGC = false # MaxRSS = 86917120 FAIL FAIL runtime/pprof 19.004s ok runtime/trace 13.519s --- FAIL: TestInsert (0.01s) slices_test.go:509: too many allocations inserting 50 elements: got 61, want less than 25 --- FAIL: TestGrow (0.00s) slices_test.go:917: Grow should allocate once when given insufficient capacity; allocated 2 times --- FAIL: TestConcat (0.01s) slices_test.go:1265: Concat([[1]]) allocated 2 times; want 1 slices_test.go:1265: Concat([[1] [2]]) allocated 2 times; want 1 slices_test.go:1265: Concat([[1] [] [2]]) allocated 2 times; want 1 FAIL FAIL slices 2.459s ok sort 3.650s ok strconv 10.724s --- FAIL: TestBuilderGrow (0.02s) builder_test.go:109: growLen=0: got 1 allocs during Write; want 0 builder_test.go:109: growLen=100: got 2 allocs during Write; want 1 builder_test.go:109: growLen=1000: got 2 allocs during Write; want 1 builder_test.go:109: growLen=10000: got 2 allocs during Write; want 1 builder_test.go:109: growLen=100000: got 2 allocs during Write; want 1 --- FAIL: TestBuilderAllocs (0.02s) builder_test.go:200: Builder allocs = 2; want 1 FAIL FAIL strings 1.461s ok sync 0.935s ok sync/atomic 5.820s ok syscall 6.781s ok testing 3.486s ok testing/fstest 0.098s ok testing/iotest 0.110s ok testing/quick 0.789s ok testing/slogtest 0.103s ok text/scanner 0.102s ok text/tabwriter 0.120s ok text/template 0.357s ok text/template/parse 0.190s ok time 3.943s ok unicode 0.132s ok unicode/utf16 0.130s ok unicode/utf8 0.123s ok cmd/addr2line 3.665s ok cmd/api 2.142s ok cmd/asm/internal/asm 6.157s ok cmd/asm/internal/lex 0.050s ok cmd/cgo/internal/swig 0.071s --- FAIL: Test10303 (0.00s) test.go:1777: C int* argument on stack test.go:1780: C intptr argument on stack test.go:1783: C void* argument on stack test.go:1786: C struct field pointer on stack FAIL FAIL cmd/cgo/internal/test 6.293s ok cmd/cgo/internal/testcarchive 0.057s ok cmd/cgo/internal/testcshared 0.064s ok cmd/cgo/internal/testerrors 25.106s ok cmd/cgo/internal/testfortran 0.075s ok cmd/cgo/internal/testgodefs 2.421s ok cmd/cgo/internal/testlife 2.302s ok cmd/cgo/internal/testnocgo 0.055s ok cmd/cgo/internal/testplugin 0.050s ok cmd/cgo/internal/testsanitizers 26.189s ok cmd/cgo/internal/testshared 0.072s ok cmd/cgo/internal/testso 4.860s ok cmd/cgo/internal/teststdio 4.995s ok cmd/cgo/internal/testtls 0.057s ok cmd/compile/internal/abt 0.128s ok cmd/compile/internal/amd64 183.456s ok cmd/compile/internal/base 0.180s ok cmd/compile/internal/compare 0.259s ok cmd/compile/internal/devirtualize 0.225s ok cmd/compile/internal/dwarfgen 3.177s ok cmd/compile/internal/importer 5.412s ok cmd/compile/internal/inline/inlheur 2.794s ok cmd/compile/internal/ir 0.098s ok cmd/compile/internal/logopt 1.703s ok cmd/compile/internal/loopvar 101.263s ok cmd/compile/internal/noder 0.377s ok cmd/compile/internal/reflectdata 0.295s [no tests to run] ok cmd/compile/internal/ssa 94.195s ok cmd/compile/internal/syntax 1.245s --- FAIL: TestAppendOfMake (0.00s) issue53888_test.go:22: got 1.000000 allocs, want 0 issue53888_test.go:31: got 1.000000 allocs, want 0 issue53888_test.go:37: got 1.000000 allocs, want 0 issue53888_test.go:43: got 1.000000 allocs, want 0 FAIL FAIL cmd/compile/internal/test 35.408s ok cmd/compile/internal/typecheck 2.573s ok cmd/compile/internal/types 0.270s ok cmd/compile/internal/types2 46.087s ok cmd/covdata 0.267s ok cmd/cover 7.088s ok cmd/dist 0.262s ok cmd/distpack 0.260s ok cmd/doc 3.120s ok cmd/fix 3.892s ok cmd/go 95.329s ok cmd/go/internal/auth 0.336s ok cmd/go/internal/cache 0.647s ok cmd/go/internal/cfg 0.258s [no tests to run] ok cmd/go/internal/envcmd 0.387s ok cmd/go/internal/fsys 0.504s ok cmd/go/internal/generate 0.256s ok cmd/go/internal/gover 0.256s ok cmd/go/internal/imports 0.256s ok cmd/go/internal/load 0.421s ok cmd/go/internal/lockedfile 0.751s ok cmd/go/internal/lockedfile/internal/filelock 0.184s ok cmd/go/internal/modfetch 0.623s ok cmd/go/internal/modfetch/codehost 10.904s ok cmd/go/internal/modfetch/zip_sum_test 0.399s ok cmd/go/internal/modindex 4.971s ok cmd/go/internal/modload 0.437s ok cmd/go/internal/mvs 0.362s ok cmd/go/internal/par 0.700s ok cmd/go/internal/str 0.702s ok cmd/go/internal/test 1.091s ok cmd/go/internal/toolchain 0.620s ok cmd/go/internal/vcs 0.559s ok cmd/go/internal/vcweb 0.430s ok cmd/go/internal/vcweb/vcstest 39.891s ok cmd/go/internal/web 0.362s ok cmd/go/internal/work 0.895s ok cmd/gofmt 1.145s ok cmd/internal/archive 5.354s ok cmd/internal/bootstrap_test 0.265s ok cmd/internal/buildid 4.059s ok cmd/internal/cov 2.671s ok cmd/internal/dwarf 0.233s ok cmd/internal/edit 0.203s ok cmd/internal/goobj 0.341s ok cmd/internal/moddeps 8.885s ok cmd/internal/notsha256 0.355s ok cmd/internal/obj 2.768s ok cmd/internal/obj/ppc64 1.251s ok cmd/internal/obj/riscv 0.662s ok cmd/internal/obj/s390x 0.298s ok cmd/internal/obj/x86 2.300s ok cmd/internal/objabi 0.689s ok cmd/internal/pkgpath 1.008s ok cmd/internal/pkgpattern 0.342s ok cmd/internal/quoted 0.229s ok cmd/internal/src 0.291s ok cmd/internal/test2json 4.245s ok cmd/link 43.189s ok cmd/link/internal/benchmark 0.341s ok cmd/link/internal/ld 23.865s ok cmd/link/internal/loader 0.430s ok cmd/nm 11.161s ok cmd/objdump 14.112s ok cmd/pack 6.923s ok cmd/pprof 6.640s ok cmd/trace 2.769s ok cmd/vet 28.530s FAIL go tool dist: Failed: exit status 1 ```
zhangfannie commented 12 months ago

Allocs-related tests fail because when -asan is turned on, the -checkptr option is implicitly set to 2, which is implemented by CL 393315, so that some stack objects with usafe.Pointer operation will escape to the heap, resulting in additional heap allocation.

zhangfannie commented 12 months ago

For the bug in the assembly function, I will submit a patch to fix it.

As for the issue of allocs tests, we may need to skip these tests when -asan is on. Does anyone have any other ideas? Thank you.

gopherbot commented 12 months ago

Change https://go.dev/cl/543837 mentions this issue: runtime: change the name of variables in asan-related assembly funtions

bcmills commented 12 months ago

As for the issue of allocs tests, we may need to skip these tests when -asan is on. Does anyone have any other ideas?

testenv.SkipIfOptimizationOff seems like it fits the bill — is there some way to make testenv.OptimizationOff return true if the build is using MSAN or ASAN?

zhangfannie commented 12 months ago

testenv.SkipIfOptimizationOff seems like it fits the bill — is there some way to make testenv.OptimizationOff return true if the build is using MSAN or ASAN?

This is a good one! Maybe we can control it through build flags. Please see the changes below. Thank you.

diff --git a/src/internal/testenv/noopt.go b/src/internal/testenv/noopt.go
index ae2a3d011a..68f7bbdbb7 100644
--- a/src/internal/testenv/noopt.go
+++ b/src/internal/testenv/noopt.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.

-//go:build noopt
+//go:build noopt || asan || msan
zhangfannie commented 11 months ago

testenv.SkipIfOptimizationOff seems like it fits the bill — is there some way to make testenv.OptimizationOff return true if the build is using MSAN or ASAN?

@bcmills When I was about to write the fixing code, I found that this idea was not very good. Because when we use testenv.SkipIfOptimizationOff function to skip some tests that will fail when -asan is turned on, then these tests will not run when -noopt is turned on. I guess that is not what we expected, right?

Perhaps we may need to create a new SkipIfOptimizationOff-like function for asan, called SkipAsanOn or something else. What do you think? Thank you.

bcmills commented 11 months ago

@zhangfannie, I think it would be fine to spuriously skip alloc tests on the -noopt builders too — otherwise, won't those allocation tests also fail if the implementation details of the compiler change in a way we don't care about?

If real users care about reducing allocations, presumably they should build their programs in a way that does not explicitly prevent the compiler from reducing allocations. 😅

zhangfannie commented 11 months ago

@bcmills Perhaps we could create an exported function called runtime.AsanEnabled() and use this function to skip these failing tests. what do you think? Thank you.

mauri870 commented 11 months ago

@zhangfannie Looks like you reached the same dead end as me, in https://github.com/golang/go/issues/64256.

I ended up filling https://github.com/golang/go/issues/64611 which I believe is a good addition that would make it much easier to deal with these test allocation cases moving forward. I would be glad to hear your opinions on this.

cc @bcmills

zhangfannie commented 11 months ago

@zhangfannie Looks like you reached the same dead end as me, in #64256.

I ended up filling #64611 which I believe is a good addition that would make it much easier to deal with these test allocation cases moving forward. I would be glad to hear your opinions on this.

I think this is a good approach. Thank you for doing this.

mauri870 commented 9 months ago

I got back to working on this after the internal/asan package was submitted.

There are many tests that fail with wrong allocation counts, and these can now be skipped by checking asan.Enabled.

I'm attaching the output of tests that are still failing. I'm not sure if they are false positives and should be skipped as well.

There is a AddressSanitizer stack-overflow in runtime, failures in pprof tests and test10303 in src/cmd/cgo/internal/test.

Sending as an attachment because Firefox crashes if I try to paste the contents

out.txt

qiulaidongfeng commented 9 months ago

I'm attaching the output of tests that are still failing. I'm not sure if they are false positives and should be skipped as well.

Test fail of cmd/internal/moddeps maybe a false alarm? I can't reproduce it in wsl2.

mauri870 commented 9 months ago

I'm attaching the output of tests that are still failing. I'm not sure if they are false positives and should be skipped as well.

Test fail of cmd/internal/moddeps maybe a false alarm? I can't reproduce it in wsl2.

Sorry, please ignore the dep tests, my go tree is dirty. The ones that I'm worried about are cgo, runtime and pprof.

qiulaidongfeng commented 9 months ago

My machine(wsl2) output

runtime

traceback: unexpected SPWRITE function asancall
fatal error: traceback

cgo

--- FAIL: Test10303 (0.00s)
    test.go:1777: C int* argument on stack
    test.go:1780: C intptr argument on stack
    test.go:1783: C void* argument on stack
    test.go:1786: C struct field pointer on stack
FAIL
FAIL    cmd/cgo/internal/test   2.019s
gopherbot commented 2 weeks ago

Change https://go.dev/cl/622855 mentions this issue: all: skip allocation counting tests with -asan and -msan

mknyszek commented 2 weeks ago

There are still a few flaky tests. Namely:

TestNewOSProc0 TestGdb TestCgoPprof TestCgoSigfwd

These should probably just get their own issues at this point, so leaving this closed.

gopherbot commented 2 weeks ago

Change https://go.dev/cl/623176 mentions this issue: runtime: skip TestNewOSProc0 with asan and msan

mknyszek commented 2 weeks ago

I have a patch out for TestNewOSProc0. The rest don't actually seem like real problems themselves, but rather collateral damage from some nearby test, possibly running in parallel.

Notably, the TestGdb* and TestCgo* tests all shell out to programs built without -asan, and the failure is a bad signal in the main test binary, which is running pure Go code at that point. If there was a serious issues with pure Go code, I would expect other packages to be failing, which is why I think it has to be bad test somewhere in the tests running in parallel.

gopherbot commented 2 weeks ago

Change https://go.dev/cl/623336 mentions this issue: runtime: skip TestMemmoveOverflow with asan

gopherbot commented 2 weeks ago

Change https://go.dev/cl/623957 mentions this issue: [release-branch.go1.23] all: skip and fix various tests with -asan and -msan