Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

cmd/link: relocation addend overflows on darwin/arm64 #42738

Closed
shoenig opened this issue Nov 20, 2020 · 15 comments
Closed

cmd/link: relocation addend overflows on darwin/arm64 #42738

shoenig opened this issue Nov 20, 2020 · 15 comments
Labels
arch-arm64 FrozenDueToAge NeedsInvestigation Someone must examine and confirm this is a valid issue and not a duplicate of an existing one. OS-Darwin
Milestone

Comments

@shoenig
Copy link
Contributor

shoenig commented Nov 20, 2020

Apologies if it's too early to be filing bugs around darwin/arm64 or if this is already known.

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

% go version
go version devel +0dcc7d6ea8 Fri Nov 20 02:27:53 2020 +0000 darwin/arm64

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

go env Output
$ go env
GO111MODULE=""
GOARCH="arm64"
GOBIN=""
GOCACHE="/Users/shoenig/Library/Caches/go-build"
GOENV="/Users/shoenig/Library/Application Support/go/env"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="arm64"
GOHOSTOS="darwin"
GOINSECURE=""
GOMODCACHE="/Users/shoenig/Documents/go/pkg/mod"
GONOPROXY=""
GONOSUMDB=""
GOOS="darwin"
GOPATH="/Users/shoenig/Documents/go"
GOPRIVATE=""
GOPROXY="https://proxy.golang.org,direct"
GOROOT="/opt/go"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/opt/go/pkg/tool/darwin_arm64"
GOVCS=""
GOVERSION="devel +0dcc7d6ea8 Fri Nov 20 02:27:53 2020 +0000"
GCCGO="gccgo"
AR="ar"
CC="clang"
CXX="clang++"
CGO_ENABLED="1"
GOMOD="/dev/null"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/dm/ywmn1y2n5sd5s47l80td5n140000gn/T/go-build981747890=/tmp/go-build -gno-record-gcc-switches -fno-common"

What did you do?

Built Go following #38485 (comment)

Build nomad f-darwin-arm64 branch

Run nomad version

What did you expect to see?

Version output

What did you see instead?

runtime: out of memory: cannot allocate 1729382219220254720-byte block (0 in use)
fatal error: out of memory

runtime stack:
runtime.throw(0x1016921a2, 0xd)
	runtime/panic.go:1112 +0x54 fp=0x16fc63730 sp=0x16fc63700 pc=0x1001d2f84
runtime.(*mcache).allocLarge(0x1039b0108, 0x17fffff7394083e0, 0x1, 0xfffffe730b194fe5)
	runtime/mcache.go:226 +0x2f0 fp=0x16fc637a0 sp=0x16fc63730 pc=0x1001b53c0
runtime.mallocgc(0x17fffff7394083e0, 0x101201800, 0x16fc63801, 0x1001f2ec4)
	runtime/malloc.go:1078 +0x82c fp=0x16fc63850 sp=0x16fc637a0 pc=0x1001ab94c
runtime.newobject(0x101201800, 0x10315a320)
	runtime/malloc.go:1177 +0x38 fp=0x16fc63880 sp=0x16fc63850 pc=0x1001abae8
runtime.malg(0x100008000, 0x1022359c8)
	runtime/proc.go:3870 +0x2c fp=0x16fc638d0 sp=0x16fc63880 pc=0x1001dde5c
runtime.mpreinit(0x10315a320)
	runtime/os_darwin.go:284 +0x28 fp=0x16fc638f0 sp=0x16fc638d0 pc=0x1001d0098
runtime.mcommoninit(0x10315a320, 0xffffffffffffffff)
	runtime/proc.go:708 +0xdc fp=0x16fc63940 sp=0x16fc638f0 pc=0x1001d69ec
runtime.schedinit()
	runtime/proc.go:601 +0x98 fp=0x16fc639a0 sp=0x16fc63940 pc=0x1001d6548
runtime.rt0_go(0x0, 0x0, 0x0, 0x0, 0x10019c000, 0x2, 0x16fc63b68, 0x16fc63b6e, 0x0, 0x16fc63b76, ...)
	runtime/asm_arm64.s:82 +0xd0 fp=0x16fc639d0 sp=0x16fc639a0 pc=0x100207f30
@dmitshur dmitshur added arch-arm64 NeedsInvestigation Someone must examine and confirm this is a valid issue and not a duplicate of an existing one. OS-Darwin labels Nov 20, 2020
@dmitshur
Copy link
Contributor

CC @cherrymui.

@cherrymui
Copy link
Member

What is your program? Do you actually allocate 1729382219220254720 byte?

@shoenig
Copy link
Contributor Author

shoenig commented Nov 20, 2020

It's hashicorp's nomad

Looks like this may be specific to cgo, if I set CGO_ENABLED=0 the binary is able to build and run.

I don't believe we deliberately allocate 1729382219220254720 bytes; this program compiles and runs with cgo enabled on all the major platforms.

@ianlancetaylor
Copy link
Contributor

The size of the g type descriptor is absurdly large. Memory must be being corrupted somewhere.

Can you give complete and precise instructions for recreating the problem, starting from scratch? Thanks.

@shoenig
Copy link
Contributor Author

shoenig commented Nov 20, 2020

I noticed the problem also exists with Consul, which is easier to build and has fewer interesting dependencies. This script should be enough to recreate the problem in an isolated-ish setup.

#!/usr/bin/env bash

set -euo pipefail

# Setup GOPATH
export GOPATH="$(mktemp -d)/go"
mkdir -p "${GOPATH}/src/github.com/hashicorp"

# Clone consul
git clone -b v1.8.5 git@github.com:hashicorp/consul.git "${GOPATH}/src/github.com/hashicorp/consul"
pushd "${GOPATH}/src/github.com/hashicorp/consul"

# Install and sign
go install
codesign -s - "${GOPATH}/bin/consul"

# Try to run
${GOPATH}/bin/consul

@dmitshur
Copy link
Contributor

I tried the consul@v1.8.5 repro and I'm able to reproduce on a M1 Mac with 8 GB RAM at:

$ go version
go version devel +7716a2fbb7 Sun Nov 22 11:44:49 2020 -0500 darwin/arm64  # CL 272258 PS 1

I minified it down to:

package main

import _ "github.com/hashicorp/consul/command"

func main() {}

Then to:

go.mod
module m.test

go 1.16

require (
	github.com/hashicorp/consul v1.8.5
	github.com/mitchellh/cli v1.1.2
)
package main

import (
	"github.com/hashicorp/consul/agent"
	"github.com/hashicorp/consul/command/flags"
	"github.com/mitchellh/cli"
)

func main() { println("issue 42738") }

func init() {
	registry["agent"] = func(ui cli.Ui) (cli.Command, error) {
		return (*cmd)(nil), nil
	}
}

type cmd struct {
	_ *flags.HTTPFlags
}

func (*cmd) Run(args []string) int {
	agent.NewBaseDeps(nil, nil)
	return 1
}

func (*cmd) Synopsis() string { return "" }

func (*cmd) Help() string { return "" }

type Factory func(cli.Ui) (cli.Command, error)

var registry = make(map[string]Factory)

Which fails in the same way when run:

$ go run ./main.go
runtime: out of memory: cannot allocate 10932832397091143680-byte block (0 in use)
fatal error: out of memory

runtime stack:
runtime.throw(0x1040c6e2a, 0xd)
	/Users/dmitri/go116r2/src/runtime/panic.go:1112 +0x54 fp=0x16d40f690 sp=0x16d40f660 pc=0x102a24b74
runtime.(*mcache).allocLarge(0x1069fc108, 0x97b93923f94023e3, 0x1, 0xfffffd69144eed6f)
	/Users/dmitri/go116r2/src/runtime/mcache.go:226 +0x2f0 fp=0x16d40f700 sp=0x16d40f690 pc=0x102a06fb0
runtime.mallocgc(0x97b93923f94023e3, 0x103c0d340, 0x16d40f701, 0x102a448d4)
	/Users/dmitri/go116r2/src/runtime/malloc.go:1078 +0x82c fp=0x16d40f7b0 sp=0x16d40f700 pc=0x1029fd53c
runtime.newobject(0x103c0d340, 0x105fbf1e0)
	/Users/dmitri/go116r2/src/runtime/malloc.go:1177 +0x38 fp=0x16d40f7e0 sp=0x16d40f7b0 pc=0x1029fd6d8
runtime.malg(0x100008000, 0x104c36138)
	/Users/dmitri/go116r2/src/runtime/proc.go:3870 +0x2c fp=0x16d40f830 sp=0x16d40f7e0 pc=0x102a2fa4c
runtime.mpreinit(0x105fbf1e0)
	/Users/dmitri/go116r2/src/runtime/os_darwin.go:284 +0x28 fp=0x16d40f850 sp=0x16d40f830 pc=0x102a21c88
runtime.mcommoninit(0x105fbf1e0, 0xffffffffffffffff)
	/Users/dmitri/go116r2/src/runtime/proc.go:708 +0xdc fp=0x16d40f8a0 sp=0x16d40f850 pc=0x102a285dc
runtime.schedinit()
	/Users/dmitri/go116r2/src/runtime/proc.go:601 +0x98 fp=0x16d40f900 sp=0x16d40f8a0 pc=0x102a28138
runtime.rt0_go(0x0, 0x0, 0x0, 0x0, 0x1029f0000, 0x1, 0x16d40faf8, 0x0, 0x16d40fb49, 0x16d40fb71, ...)
	/Users/dmitri/go116r2/src/runtime/asm_arm64.s:82 +0xd0 fp=0x16d40f930 sp=0x16d40f900 pc=0x102a59170
exit status 2

Yet:

$ CGO_ENABLED=0 go run ./main.go
issue 42738

If either *flags.HTTPFlags field or agent.NewBaseDeps call is removed, there's no more crash. They're coming from big packages with many dependencies, and I'm not sure what's a good next step to minify.

In case it helps, here's output of both runs with GODEBUG=inittrace=1:

$ GODEBUG=inittrace=1 go run ./main.go
init internal/bytealg @0 ms, 0 ms clock, 0 bytes, 0 allocs
init runtime @0.023 ms, 0.046 ms clock, 0 bytes, 0 allocs
init errors @0.29 ms, 0.004 ms clock, 0 bytes, 0 allocs
init sync @0.31 ms, 0.004 ms clock, 16 bytes, 1 allocs
init internal/oserror @0.33 ms, 0.003 ms clock, 80 bytes, 5 allocs
init syscall @0.34 ms, 0.007 ms clock, 432 bytes, 2 allocs
init time @0.36 ms, 0.016 ms clock, 384 bytes, 8 allocs
init context @0.39 ms, 0.007 ms clock, 128 bytes, 4 allocs
init strconv @0.40 ms, 0.002 ms clock, 32 bytes, 2 allocs
init unicode @0.42 ms, 0.12 ms clock, 24568 bytes, 30 allocs
init reflect @0.55 ms, 0.002 ms clock, 0 bytes, 0 allocs
init io @0.57 ms, 0.003 ms clock, 144 bytes, 9 allocs
init path @0.58 ms, 0 ms clock, 16 bytes, 1 allocs
init io/fs @0.59 ms, 0 ms clock, 16 bytes, 1 allocs
init internal/poll @0.60 ms, 0.002 ms clock, 64 bytes, 4 allocs
init os @0.61 ms, 0.19 ms clock, 2680 bytes, 18 allocs
init fmt @0.82 ms, 0.002 ms clock, 32 bytes, 2 allocs
init flag @0.84 ms, 0.005 ms clock, 160 bytes, 5 allocs
init log @0.85 ms, 0.003 ms clock, 80 bytes, 1 allocs
init path/filepath @0.87 ms, 0.002 ms clock, 16 bytes, 1 allocs
init bytes @0.88 ms, 0.003 ms clock, 48 bytes, 3 allocs
init os/exec @0.89 ms, 0.003 ms clock, 16 bytes, 1 allocs
init go/token @0.91 ms, 0.012 ms clock, 1568 bytes, 4 allocs
init regexp/syntax @0.93 ms, 0.018 ms clock, 7648 bytes, 9 allocs
init regexp @0.96 ms, 0.003 ms clock, 0 bytes, 0 allocs
init internal/lazyregexp @0.97 ms, 0.002 ms clock, 0 bytes, 0 allocs
init text/template/parse @0.99 ms, 0.006 ms clock, 464 bytes, 2 allocs
init io/ioutil @1.0 ms, 0.002 ms clock, 16 bytes, 1 allocs
init text/template @1.0 ms, 0.008 ms clock, 48 bytes, 3 allocs
init go/doc @1.0 ms, 0.022 ms clock, 2208 bytes, 18 allocs
init bufio @1.0 ms, 0.003 ms clock, 176 bytes, 11 allocs
init go/parser @1.0 ms, 0.010 ms clock, 768 bytes, 7 allocs
init go/build @1.1 ms, 0.055 ms clock, 5648 bytes, 43 allocs
init encoding/binary @1.1 ms, 0 ms clock, 16 bytes, 1 allocs
init encoding/base64 @1.1 ms, 0.008 ms clock, 1408 bytes, 4 allocs
init encoding/json @1.2 ms, 0.003 ms clock, 32 bytes, 2 allocs
init cmd/go/internal/fsys @1.2 ms, 0.003 ms clock, 16 bytes, 1 allocs
init cmd/internal/objabi @1.2 ms, 0.006 ms clock, 48 bytes, 4 allocs
init cmd/go/internal/cfg @1.2 ms, 0.15 ms clock, 3656 bytes, 26 allocs
init os/signal @1.4 ms, 0.001 ms clock, 0 bytes, 0 allocs
init cmd/go/internal/base @1.4 ms, 0.019 ms clock, 608 bytes, 5 allocs
init crypto @1.4 ms, 0.001 ms clock, 160 bytes, 1 allocs
init crypto/cipher @1.4 ms, 0.003 ms clock, 16 bytes, 1 allocs
init crypto/aes @1.4 ms, 0 ms clock, 16 bytes, 1 allocs
init math/rand @1.4 ms, 0.048 ms clock, 5440 bytes, 3 allocs
init math/big @1.5 ms, 0.002 ms clock, 32 bytes, 2 allocs
init crypto/sha512 @1.5 ms, 0.002 ms clock, 0 bytes, 0 allocs
init encoding/asn1 @1.5 ms, 0.009 ms clock, 224 bytes, 7 allocs
init vendor/golang.org/x/crypto/cryptobyte @1.5 ms, 0.002 ms clock, 48 bytes, 2 allocs
init crypto/ecdsa @1.6 ms, 0.001 ms clock, 48 bytes, 3 allocs
init crypto/rand @1.6 ms, 0.002 ms clock, 96 bytes, 3 allocs
init crypto/rsa @1.6 ms, 0.009 ms clock, 648 bytes, 18 allocs
init crypto/sha1 @1.6 ms, 0 ms clock, 0 bytes, 0 allocs
init crypto/sha256 @1.6 ms, 0.003 ms clock, 0 bytes, 0 allocs
init crypto/md5 @1.6 ms, 0 ms clock, 0 bytes, 0 allocs
init encoding/hex @1.6 ms, 0.003 ms clock, 16 bytes, 1 allocs
init crypto/x509/pkix @1.6 ms, 0.007 ms clock, 624 bytes, 2 allocs
init crypto/x509/internal/macos @1.7 ms, 0.017 ms clock, 16 bytes, 1 allocs
init vendor/golang.org/x/net/dns/dnsmessage @1.7 ms, 0.013 ms clock, 1616 bytes, 27 allocs
init vendor/golang.org/x/net/route @1.7 ms, 0.011 ms clock, 1432 bytes, 24 allocs
init net @1.7 ms, 0.038 ms clock, 2840 bytes, 74 allocs
init crypto/dsa @1.8 ms, 0.001 ms clock, 16 bytes, 1 allocs
init crypto/x509 @1.8 ms, 0.012 ms clock, 992 bytes, 8 allocs
init vendor/golang.org/x/crypto/chacha20poly1305 @1.8 ms, 0.002 ms clock, 16 bytes, 1 allocs
init vendor/golang.org/x/crypto/curve25519 @1.8 ms, 0 ms clock, 0 bytes, 0 allocs
init crypto/tls @1.8 ms, 0.006 ms clock, 1600 bytes, 11 allocs
init mime @1.9 ms, 0.004 ms clock, 1232 bytes, 4 allocs
init mime/multipart @1.9 ms, 0.002 ms clock, 192 bytes, 4 allocs
init compress/flate @1.9 ms, 0.015 ms clock, 4240 bytes, 7 allocs
init hash/crc32 @1.9 ms, 0.020 ms clock, 1024 bytes, 1 allocs
init compress/gzip @1.9 ms, 0.002 ms clock, 32 bytes, 2 allocs
init vendor/golang.org/x/text/transform @2.0 ms, 0 ms clock, 80 bytes, 5 allocs
init vendor/golang.org/x/text/unicode/bidi @2.0 ms, 0.003 ms clock, 272 bytes, 2 allocs
init vendor/golang.org/x/text/secure/bidirule @2.0 ms, 0.006 ms clock, 16 bytes, 1 allocs
init vendor/golang.org/x/text/unicode/norm @2.0 ms, 0.002 ms clock, 0 bytes, 0 allocs
init vendor/golang.org/x/net/idna @2.0 ms, 0.001 ms clock, 0 bytes, 0 allocs
init vendor/golang.org/x/net/http/httpguts @2.0 ms, 0.006 ms clock, 688 bytes, 2 allocs
init vendor/golang.org/x/net/http2/hpack @2.0 ms, 0.062 ms clock, 21032 bytes, 28 allocs
init net/http/internal @2.1 ms, 0.009 ms clock, 1808 bytes, 3 allocs
init vendor/golang.org/x/net/http/httpproxy @2.1 ms, 0.002 ms clock, 336 bytes, 2 allocs
init net/http @2.1 ms, 0.035 ms clock, 10280 bytes, 113 allocs
init cmd/go/internal/web @2.2 ms, 0.003 ms clock, 16 bytes, 1 allocs
init cmd/go/internal/bug @2.2 ms, 0.003 ms clock, 320 bytes, 3 allocs
init cmd/go/internal/cache @2.2 ms, 0.006 ms clock, 80 bytes, 3 allocs
init cmd/go/internal/lockedfile/internal/filelock @2.2 ms, 0 ms clock, 16 bytes, 1 allocs
init archive/zip @2.2 ms, 0.010 ms clock, 784 bytes, 23 allocs
init encoding/xml @2.2 ms, 0.037 ms clock, 19464 bytes, 8 allocs
init cmd/go/internal/modfetch/codehost @2.3 ms, 0.007 ms clock, 1520 bytes, 18 allocs
init cmd/vendor/golang.org/x/xerrors @2.3 ms, 0.003 ms clock, 0 bytes, 0 allocs
init cmd/vendor/golang.org/x/mod/internal/lazyregexp @2.3 ms, 0.002 ms clock, 0 bytes, 0 allocs
init cmd/vendor/golang.org/x/mod/modfile @2.3 ms, 0.002 ms clock, 48 bytes, 1 allocs
init cmd/vendor/golang.org/x/mod/zip @2.3 ms, 0.008 ms clock, 464 bytes, 16 allocs
init cmd/go/internal/vcs @2.4 ms, 0.005 ms clock, 784 bytes, 15 allocs
init cmd/vendor/golang.org/x/mod/sumdb/note @2.4 ms, 0.002 ms clock, 128 bytes, 8 allocs
init cmd/vendor/golang.org/x/mod/sumdb/tlog @2.4 ms, 0.002 ms clock, 48 bytes, 3 allocs
init cmd/vendor/golang.org/x/mod/sumdb @2.4 ms, 0.002 ms clock, 96 bytes, 4 allocs
init cmd/go/internal/modfetch @2.4 ms, 0.004 ms clock, 656 bytes, 15 allocs
init cmd/go/internal/imports @2.4 ms, 0.008 ms clock, 1448 bytes, 8 allocs
init cmd/go/internal/modconv @2.4 ms, 0.005 ms clock, 720 bytes, 4 allocs
init cmd/go/internal/modload @2.4 ms, 0.004 ms clock, 208 bytes, 9 allocs
init cmd/internal/sys @2.5 ms, 0.001 ms clock, 0 bytes, 0 allocs
init internal/lazytemplate @2.5 ms, 0 ms clock, 0 bytes, 0 allocs
init cmd/go/internal/load @2.5 ms, 0.005 ms clock, 640 bytes, 8 allocs
init compress/zlib @2.5 ms, 0.003 ms clock, 48 bytes, 3 allocs
init debug/dwarf @2.5 ms, 0.052 ms clock, 13528 bytes, 25 allocs
init debug/elf @2.6 ms, 0.002 ms clock, 16 bytes, 1 allocs
init cmd/internal/buildid @2.6 ms, 0.002 ms clock, 40 bytes, 2 allocs
init cmd/internal/pkgpath @2.6 ms, 0.002 ms clock, 176 bytes, 2 allocs
init cmd/go/internal/work @2.6 ms, 0.10 ms clock, 19712 bytes, 245 allocs
init cmd/go/internal/clean @2.7 ms, 0.018 ms clock, 6656 bytes, 47 allocs
init cmd/go/internal/envcmd @2.7 ms, 0.005 ms clock, 448 bytes, 8 allocs
init cmd/go/internal/fmtcmd @2.8 ms, 0.002 ms clock, 656 bytes, 9 allocs
init cmd/go/internal/generate @2.8 ms, 0.022 ms clock, 5352 bytes, 36 allocs
init cmd/go/internal/get @2.8 ms, 0.025 ms clock, 8400 bytes, 42 allocs
init cmd/go/internal/help @2.8 ms, 0.005 ms clock, 768 bytes, 1 allocs
init cmd/go/internal/list @2.8 ms, 0.015 ms clock, 6240 bytes, 58 allocs
init cmd/go/internal/modcmd @2.9 ms, 0.026 ms clock, 6672 bytes, 75 allocs
init cmd/go/internal/modget @2.9 ms, 0.022 ms clock, 14032 bytes, 46 allocs
init cmd/go/internal/run @2.9 ms, 0.010 ms clock, 5520 bytes, 35 allocs
init cmd/go/internal/cmdflag @2.9 ms, 0.003 ms clock, 16 bytes, 1 allocs
init cmd/go/internal/test @3.0 ms, 0.056 ms clock, 14016 bytes, 133 allocs
init cmd/go/internal/tool @3.0 ms, 0.001 ms clock, 320 bytes, 3 allocs
init cmd/go/internal/version @3.0 ms, 0.003 ms clock, 400 bytes, 6 allocs
init cmd/go/internal/vet @3.0 ms, 0.008 ms clock, 5104 bytes, 33 allocs
init main @3.1 ms, 0.001 ms clock, 288 bytes, 1 allocs
# command-line-arguments
init internal/bytealg @0 ms, 0 ms clock, 0 bytes, 0 allocs
init runtime @0.006 ms, 0.014 ms clock, 0 bytes, 0 allocs
init errors @0.074 ms, 0 ms clock, 0 bytes, 0 allocs
init strconv @0.081 ms, 0.001 ms clock, 32 bytes, 2 allocs
init sync @0.088 ms, 0 ms clock, 16 bytes, 1 allocs
init unicode @0.096 ms, 0.048 ms clock, 24152 bytes, 28 allocs
init reflect @0.15 ms, 0 ms clock, 0 bytes, 0 allocs
init io @0.15 ms, 0 ms clock, 144 bytes, 9 allocs
init internal/oserror @0.16 ms, 0 ms clock, 80 bytes, 5 allocs
init syscall @0.17 ms, 0.002 ms clock, 752 bytes, 2 allocs
init time @0.18 ms, 0.003 ms clock, 384 bytes, 8 allocs
init path @0.19 ms, 0 ms clock, 16 bytes, 1 allocs
init io/fs @0.20 ms, 0 ms clock, 16 bytes, 1 allocs
init internal/poll @0.21 ms, 0.001 ms clock, 64 bytes, 4 allocs
init os @0.21 ms, 0.040 ms clock, 4600 bytes, 19 allocs
init fmt @0.26 ms, 0 ms clock, 32 bytes, 2 allocs
init flag @0.27 ms, 0 ms clock, 160 bytes, 5 allocs
init path/filepath @0.27 ms, 0 ms clock, 16 bytes, 1 allocs
init io/ioutil @0.28 ms, 0 ms clock, 16 bytes, 1 allocs
init log @0.28 ms, 0.001 ms clock, 80 bytes, 1 allocs
init cmd/internal/objabi @0.29 ms, 0.001 ms clock, 32 bytes, 4 allocs
init encoding/binary @0.29 ms, 0 ms clock, 16 bytes, 1 allocs
init cmd/internal/sys @0.30 ms, 0 ms clock, 0 bytes, 0 allocs
init bytes @0.31 ms, 0 ms clock, 48 bytes, 3 allocs
init bufio @0.32 ms, 0 ms clock, 176 bytes, 11 allocs
init context @0.32 ms, 0 ms clock, 128 bytes, 4 allocs
init os/exec @0.33 ms, 0 ms clock, 16 bytes, 1 allocs
init crypto @0.34 ms, 0 ms clock, 160 bytes, 1 allocs
init crypto/sha1 @0.35 ms, 0.001 ms clock, 0 bytes, 0 allocs
init cmd/internal/goobj @0.36 ms, 0.019 ms clock, 14408 bytes, 3 allocs
init compress/flate @0.39 ms, 0.008 ms clock, 4240 bytes, 7 allocs
init compress/zlib @0.40 ms, 0 ms clock, 48 bytes, 3 allocs
init debug/dwarf @0.41 ms, 0.023 ms clock, 13416 bytes, 18 allocs
init debug/elf @0.44 ms, 0 ms clock, 16 bytes, 1 allocs
init cmd/link/internal/sym @0.45 ms, 0.002 ms clock, 80 bytes, 2 allocs
init encoding/hex @0.45 ms, 0 ms clock, 16 bytes, 1 allocs
init encoding/base64 @0.46 ms, 0.001 ms clock, 1408 bytes, 4 allocs
init encoding/json @0.47 ms, 0.001 ms clock, 32 bytes, 2 allocs
init crypto/sha256 @0.48 ms, 0 ms clock, 0 bytes, 0 allocs
init hash/crc32 @0.49 ms, 0.009 ms clock, 1024 bytes, 1 allocs
init compress/gzip @0.50 ms, 0 ms clock, 32 bytes, 2 allocs
init runtime/pprof @0.51 ms, 0 ms clock, 32 bytes, 2 allocs
init cmd/link/internal/ld @0.52 ms, 0.011 ms clock, 14640 bytes, 87 allocs
init cmd/internal/obj/riscv @0.54 ms, 0.006 ms clock, 1120 bytes, 7 allocs
init regexp/syntax @0.55 ms, 0.010 ms clock, 7232 bytes, 8 allocs
init regexp @0.57 ms, 0 ms clock, 0 bytes, 0 allocs
init cmd/link/internal/wasm @0.58 ms, 0.011 ms clock, 3176 bytes, 50 allocs
runtime: out of memory: cannot allocate 17942384760907104256-byte block (0 in use)
fatal error: out of memory

runtime stack:
runtime.throw(0x1041a6e36, 0xd)
	/Users/dmitri/go116r2/src/runtime/panic.go:1112 +0x54 fp=0x16d32f670 sp=0x16d32f640 pc=0x102b04b24
runtime.(*mcache).allocLarge(0x106adc108, 0xf90027e091258000, 0x1, 0xfffffd69144eed6f)
	/Users/dmitri/go116r2/src/runtime/mcache.go:226 +0x2f0 fp=0x16d32f6e0 sp=0x16d32f670 pc=0x102ae6f60
runtime.mallocgc(0xf90027e091258000, 0x103ced340, 0x16d32f701, 0x102b24884)
	/Users/dmitri/go116r2/src/runtime/malloc.go:1078 +0x82c fp=0x16d32f790 sp=0x16d32f6e0 pc=0x102add4ec
runtime.newobject(0x103ced340, 0x10609f1e0)
	/Users/dmitri/go116r2/src/runtime/malloc.go:1177 +0x38 fp=0x16d32f7c0 sp=0x16d32f790 pc=0x102add688
runtime.malg(0x100008000, 0x104d16138)
	/Users/dmitri/go116r2/src/runtime/proc.go:3870 +0x2c fp=0x16d32f810 sp=0x16d32f7c0 pc=0x102b0f9fc
runtime.mpreinit(0x10609f1e0)
	/Users/dmitri/go116r2/src/runtime/os_darwin.go:284 +0x28 fp=0x16d32f830 sp=0x16d32f810 pc=0x102b01c38
runtime.mcommoninit(0x10609f1e0, 0xffffffffffffffff)
	/Users/dmitri/go116r2/src/runtime/proc.go:708 +0xdc fp=0x16d32f880 sp=0x16d32f830 pc=0x102b0858c
runtime.schedinit()
	/Users/dmitri/go116r2/src/runtime/proc.go:601 +0x98 fp=0x16d32f8e0 sp=0x16d32f880 pc=0x102b080e8
runtime.rt0_go(0x0, 0x0, 0x0, 0x0, 0x102ad0000, 0x1, 0x16d32fae0, 0x0, 0x16d32fb31, 0x16d32fb59, ...)
	/Users/dmitri/go116r2/src/runtime/asm_arm64.s:82 +0xd0 fp=0x16d32f910 sp=0x16d32f8e0 pc=0x102b39120
exit status 2
$ GODEBUG=inittrace=1 CGO_ENABLED=0 go run ./main.go
init internal/bytealg @0 ms, 0 ms clock, 0 bytes, 0 allocs
init runtime @0.022 ms, 0.030 ms clock, 0 bytes, 0 allocs
init errors @0.25 ms, 0.004 ms clock, 0 bytes, 0 allocs
init sync @0.27 ms, 0.004 ms clock, 16 bytes, 1 allocs
init internal/oserror @0.29 ms, 0.003 ms clock, 80 bytes, 5 allocs
init syscall @0.30 ms, 0.009 ms clock, 432 bytes, 2 allocs
init time @0.32 ms, 0.017 ms clock, 384 bytes, 8 allocs
init context @0.35 ms, 0.004 ms clock, 128 bytes, 4 allocs
init strconv @0.36 ms, 0.002 ms clock, 32 bytes, 2 allocs
init unicode @0.37 ms, 0.11 ms clock, 24152 bytes, 28 allocs
init reflect @0.50 ms, 0.003 ms clock, 0 bytes, 0 allocs
init io @0.51 ms, 0.002 ms clock, 144 bytes, 9 allocs
init path @0.53 ms, 0 ms clock, 16 bytes, 1 allocs
init io/fs @0.54 ms, 0 ms clock, 16 bytes, 1 allocs
init internal/poll @0.55 ms, 0.002 ms clock, 64 bytes, 4 allocs
init os @0.56 ms, 0.074 ms clock, 2472 bytes, 17 allocs
init fmt @0.64 ms, 0.002 ms clock, 32 bytes, 2 allocs
init flag @0.66 ms, 0.004 ms clock, 160 bytes, 5 allocs
init log @0.67 ms, 0 ms clock, 80 bytes, 1 allocs
init path/filepath @0.68 ms, 0.002 ms clock, 16 bytes, 1 allocs
init bytes @0.69 ms, 0.002 ms clock, 48 bytes, 3 allocs
init os/exec @0.70 ms, 0.002 ms clock, 16 bytes, 1 allocs
init go/token @0.72 ms, 0.009 ms clock, 1568 bytes, 4 allocs
init regexp/syntax @0.74 ms, 0.016 ms clock, 6816 bytes, 7 allocs
init regexp @0.76 ms, 0.002 ms clock, 0 bytes, 0 allocs
init internal/lazyregexp @0.78 ms, 0.002 ms clock, 0 bytes, 0 allocs
init text/template/parse @0.79 ms, 0.004 ms clock, 464 bytes, 2 allocs
init io/ioutil @0.80 ms, 0.002 ms clock, 16 bytes, 1 allocs
init text/template @0.82 ms, 0.004 ms clock, 48 bytes, 3 allocs
init go/doc @0.83 ms, 0.018 ms clock, 2208 bytes, 18 allocs
init bufio @0.86 ms, 0.002 ms clock, 176 bytes, 11 allocs
init go/parser @0.87 ms, 0.009 ms clock, 768 bytes, 7 allocs
init go/build @0.89 ms, 0.047 ms clock, 5328 bytes, 41 allocs
init encoding/binary @0.95 ms, 0 ms clock, 16 bytes, 1 allocs
init encoding/base64 @0.96 ms, 0.007 ms clock, 1408 bytes, 4 allocs
init encoding/json @0.98 ms, 0.002 ms clock, 32 bytes, 2 allocs
init cmd/go/internal/fsys @0.99 ms, 0.002 ms clock, 16 bytes, 1 allocs
init cmd/internal/objabi @1.0 ms, 0.005 ms clock, 48 bytes, 4 allocs
init cmd/go/internal/cfg @1.0 ms, 0.12 ms clock, 3816 bytes, 27 allocs
init os/signal @1.1 ms, 0 ms clock, 0 bytes, 0 allocs
init cmd/go/internal/base @1.1 ms, 0.017 ms clock, 608 bytes, 5 allocs
init crypto @1.2 ms, 0 ms clock, 160 bytes, 1 allocs
init crypto/cipher @1.2 ms, 0.003 ms clock, 16 bytes, 1 allocs
init crypto/aes @1.2 ms, 0 ms clock, 16 bytes, 1 allocs
init math/rand @1.2 ms, 0.043 ms clock, 5440 bytes, 3 allocs
init math/big @1.2 ms, 0.002 ms clock, 32 bytes, 2 allocs
init crypto/sha512 @1.2 ms, 0.002 ms clock, 0 bytes, 0 allocs
init encoding/asn1 @1.3 ms, 0.006 ms clock, 224 bytes, 7 allocs
init vendor/golang.org/x/crypto/cryptobyte @1.3 ms, 0.002 ms clock, 48 bytes, 2 allocs
init crypto/ecdsa @1.3 ms, 0 ms clock, 48 bytes, 3 allocs
init crypto/rand @1.3 ms, 0.002 ms clock, 96 bytes, 3 allocs
init crypto/rsa @1.3 ms, 0.008 ms clock, 648 bytes, 18 allocs
init crypto/sha1 @1.3 ms, 0 ms clock, 0 bytes, 0 allocs
init crypto/sha256 @1.3 ms, 0.001 ms clock, 0 bytes, 0 allocs
init crypto/md5 @1.4 ms, 0 ms clock, 0 bytes, 0 allocs
init encoding/hex @1.4 ms, 0.001 ms clock, 16 bytes, 1 allocs
init crypto/x509/pkix @1.4 ms, 0.005 ms clock, 624 bytes, 2 allocs
init crypto/x509/internal/macos @1.4 ms, 0.011 ms clock, 16 bytes, 1 allocs
init vendor/golang.org/x/net/dns/dnsmessage @1.4 ms, 0.010 ms clock, 1616 bytes, 27 allocs
init vendor/golang.org/x/net/route @1.4 ms, 0.008 ms clock, 1432 bytes, 24 allocs
init net @1.4 ms, 0.027 ms clock, 2840 bytes, 74 allocs
init crypto/dsa @1.5 ms, 0 ms clock, 16 bytes, 1 allocs
init crypto/x509 @1.5 ms, 0.006 ms clock, 992 bytes, 8 allocs
init vendor/golang.org/x/crypto/chacha20poly1305 @1.5 ms, 0.001 ms clock, 16 bytes, 1 allocs
init vendor/golang.org/x/crypto/curve25519 @1.5 ms, 0 ms clock, 0 bytes, 0 allocs
init crypto/tls @1.5 ms, 0.007 ms clock, 1600 bytes, 11 allocs
init mime @1.5 ms, 0.003 ms clock, 1232 bytes, 4 allocs
init mime/multipart @1.6 ms, 0.002 ms clock, 192 bytes, 4 allocs
init compress/flate @1.6 ms, 0.013 ms clock, 4240 bytes, 7 allocs
init hash/crc32 @1.6 ms, 0.019 ms clock, 1024 bytes, 1 allocs
init compress/gzip @1.6 ms, 0.001 ms clock, 32 bytes, 2 allocs
init vendor/golang.org/x/text/transform @1.6 ms, 0 ms clock, 80 bytes, 5 allocs
init vendor/golang.org/x/text/unicode/bidi @1.6 ms, 0.002 ms clock, 272 bytes, 2 allocs
init vendor/golang.org/x/text/secure/bidirule @1.6 ms, 0.004 ms clock, 16 bytes, 1 allocs
init vendor/golang.org/x/text/unicode/norm @1.7 ms, 0.001 ms clock, 0 bytes, 0 allocs
init vendor/golang.org/x/net/idna @1.7 ms, 0 ms clock, 0 bytes, 0 allocs
init vendor/golang.org/x/net/http/httpguts @1.7 ms, 0.004 ms clock, 688 bytes, 2 allocs
init vendor/golang.org/x/net/http2/hpack @1.7 ms, 0.055 ms clock, 21944 bytes, 31 allocs
init net/http/internal @1.7 ms, 0.007 ms clock, 1808 bytes, 3 allocs
init vendor/golang.org/x/net/http/httpproxy @1.8 ms, 0.002 ms clock, 336 bytes, 2 allocs
init net/http @1.8 ms, 0.029 ms clock, 10280 bytes, 113 allocs
init cmd/go/internal/web @1.8 ms, 0.002 ms clock, 16 bytes, 1 allocs
init cmd/go/internal/bug @1.8 ms, 0.005 ms clock, 320 bytes, 3 allocs
init cmd/go/internal/cache @1.9 ms, 0.005 ms clock, 80 bytes, 3 allocs
init cmd/go/internal/lockedfile/internal/filelock @1.9 ms, 0 ms clock, 16 bytes, 1 allocs
init archive/zip @1.9 ms, 0.009 ms clock, 784 bytes, 23 allocs
init encoding/xml @1.9 ms, 0.033 ms clock, 19464 bytes, 8 allocs
init cmd/go/internal/modfetch/codehost @2.0 ms, 0.005 ms clock, 1520 bytes, 18 allocs
init cmd/vendor/golang.org/x/xerrors @2.0 ms, 0.002 ms clock, 0 bytes, 0 allocs
init cmd/vendor/golang.org/x/mod/internal/lazyregexp @2.0 ms, 0.002 ms clock, 0 bytes, 0 allocs
init cmd/vendor/golang.org/x/mod/modfile @2.0 ms, 0.002 ms clock, 48 bytes, 1 allocs
init cmd/vendor/golang.org/x/mod/zip @2.0 ms, 0.006 ms clock, 464 bytes, 16 allocs
init cmd/go/internal/vcs @2.0 ms, 0.005 ms clock, 784 bytes, 15 allocs
init cmd/vendor/golang.org/x/mod/sumdb/note @2.1 ms, 0.002 ms clock, 128 bytes, 8 allocs
init cmd/vendor/golang.org/x/mod/sumdb/tlog @2.1 ms, 0.001 ms clock, 48 bytes, 3 allocs
init cmd/vendor/golang.org/x/mod/sumdb @2.1 ms, 0.002 ms clock, 96 bytes, 4 allocs
init cmd/go/internal/modfetch @2.1 ms, 0.004 ms clock, 656 bytes, 15 allocs
init cmd/go/internal/imports @2.1 ms, 0.008 ms clock, 1448 bytes, 8 allocs
init cmd/go/internal/modconv @2.1 ms, 0.005 ms clock, 720 bytes, 4 allocs
init cmd/go/internal/modload @2.2 ms, 0.004 ms clock, 208 bytes, 9 allocs
init cmd/internal/sys @2.2 ms, 0 ms clock, 0 bytes, 0 allocs
init internal/lazytemplate @2.2 ms, 0 ms clock, 0 bytes, 0 allocs
init cmd/go/internal/load @2.2 ms, 0.003 ms clock, 640 bytes, 8 allocs
init compress/zlib @2.2 ms, 0.001 ms clock, 48 bytes, 3 allocs
init debug/dwarf @2.2 ms, 0.042 ms clock, 13768 bytes, 20 allocs
init debug/elf @2.3 ms, 0.002 ms clock, 16 bytes, 1 allocs
init cmd/internal/buildid @2.3 ms, 0.002 ms clock, 40 bytes, 2 allocs
init cmd/internal/pkgpath @2.3 ms, 0.002 ms clock, 176 bytes, 2 allocs
init cmd/go/internal/work @2.3 ms, 0.091 ms clock, 19712 bytes, 245 allocs
init cmd/go/internal/clean @2.4 ms, 0.018 ms clock, 6032 bytes, 44 allocs
init cmd/go/internal/envcmd @2.5 ms, 0.003 ms clock, 448 bytes, 8 allocs
init cmd/go/internal/fmtcmd @2.5 ms, 0.001 ms clock, 656 bytes, 9 allocs
init cmd/go/internal/generate @2.5 ms, 0.014 ms clock, 5352 bytes, 36 allocs
init cmd/go/internal/get @2.5 ms, 0.021 ms clock, 8400 bytes, 42 allocs
init cmd/go/internal/help @2.5 ms, 0.004 ms clock, 768 bytes, 1 allocs
init cmd/go/internal/list @2.6 ms, 0.014 ms clock, 5824 bytes, 56 allocs
init cmd/go/internal/modcmd @2.6 ms, 0.018 ms clock, 6464 bytes, 74 allocs
init cmd/go/internal/modget @2.6 ms, 0.021 ms clock, 13616 bytes, 44 allocs
init cmd/go/internal/run @2.6 ms, 0.014 ms clock, 5520 bytes, 35 allocs
init cmd/go/internal/cmdflag @2.7 ms, 0.005 ms clock, 16 bytes, 1 allocs
init cmd/go/internal/test @2.7 ms, 0.058 ms clock, 15264 bytes, 139 allocs
init cmd/go/internal/tool @2.8 ms, 0 ms clock, 320 bytes, 3 allocs
init cmd/go/internal/version @2.8 ms, 0.004 ms clock, 384 bytes, 6 allocs
init cmd/go/internal/vet @2.8 ms, 0.008 ms clock, 5312 bytes, 34 allocs
init main @2.8 ms, 0.001 ms clock, 288 bytes, 1 allocs
# command-line-arguments
init internal/bytealg @0 ms, 0 ms clock, 0 bytes, 0 allocs
init runtime @0.006 ms, 0.015 ms clock, 0 bytes, 0 allocs
init errors @0.070 ms, 0 ms clock, 0 bytes, 0 allocs
init strconv @0.078 ms, 0.001 ms clock, 32 bytes, 2 allocs
init sync @0.086 ms, 0 ms clock, 16 bytes, 1 allocs
init unicode @0.097 ms, 0.050 ms clock, 24152 bytes, 28 allocs
init reflect @0.15 ms, 0 ms clock, 0 bytes, 0 allocs
init io @0.16 ms, 0.001 ms clock, 144 bytes, 9 allocs
init internal/oserror @0.17 ms, 0 ms clock, 80 bytes, 5 allocs
init syscall @0.17 ms, 0.001 ms clock, 752 bytes, 2 allocs
init time @0.18 ms, 0.003 ms clock, 384 bytes, 8 allocs
init path @0.19 ms, 0 ms clock, 16 bytes, 1 allocs
init io/fs @0.20 ms, 0 ms clock, 16 bytes, 1 allocs
init internal/poll @0.21 ms, 0 ms clock, 64 bytes, 4 allocs
init os @0.22 ms, 0.050 ms clock, 4808 bytes, 20 allocs
init fmt @0.27 ms, 0.011 ms clock, 32 bytes, 2 allocs
init flag @0.29 ms, 0.001 ms clock, 160 bytes, 5 allocs
init path/filepath @0.30 ms, 0 ms clock, 16 bytes, 1 allocs
init io/ioutil @0.31 ms, 0 ms clock, 16 bytes, 1 allocs
init log @0.31 ms, 0.001 ms clock, 80 bytes, 1 allocs
init cmd/internal/objabi @0.32 ms, 0.003 ms clock, 48 bytes, 4 allocs
init encoding/binary @0.33 ms, 0 ms clock, 16 bytes, 1 allocs
init cmd/internal/sys @0.34 ms, 0 ms clock, 0 bytes, 0 allocs
init bytes @0.35 ms, 0 ms clock, 48 bytes, 3 allocs
init bufio @0.36 ms, 0.001 ms clock, 176 bytes, 11 allocs
init context @0.36 ms, 0 ms clock, 128 bytes, 4 allocs
init os/exec @0.37 ms, 0 ms clock, 16 bytes, 1 allocs
init crypto @0.38 ms, 0 ms clock, 160 bytes, 1 allocs
init crypto/sha1 @0.39 ms, 0.001 ms clock, 0 bytes, 0 allocs
init cmd/internal/goobj @0.39 ms, 0.019 ms clock, 14408 bytes, 3 allocs
init compress/flate @0.42 ms, 0.004 ms clock, 4240 bytes, 7 allocs
init compress/zlib @0.43 ms, 0 ms clock, 48 bytes, 3 allocs
init debug/dwarf @0.44 ms, 0.024 ms clock, 13944 bytes, 21 allocs
init debug/elf @0.47 ms, 0 ms clock, 16 bytes, 1 allocs
init cmd/link/internal/sym @0.48 ms, 0.002 ms clock, 80 bytes, 2 allocs
init encoding/hex @0.49 ms, 0 ms clock, 16 bytes, 1 allocs
init encoding/base64 @0.49 ms, 0.001 ms clock, 1408 bytes, 4 allocs
init encoding/json @0.50 ms, 0.001 ms clock, 32 bytes, 2 allocs
init crypto/sha256 @0.51 ms, 0 ms clock, 0 bytes, 0 allocs
init hash/crc32 @0.52 ms, 0.009 ms clock, 1024 bytes, 1 allocs
init compress/gzip @0.54 ms, 0 ms clock, 32 bytes, 2 allocs
init runtime/pprof @0.54 ms, 0 ms clock, 32 bytes, 2 allocs
init cmd/link/internal/ld @0.55 ms, 0.012 ms clock, 14432 bytes, 86 allocs
init cmd/internal/obj/riscv @0.57 ms, 0.008 ms clock, 1120 bytes, 7 allocs
init regexp/syntax @0.58 ms, 0.005 ms clock, 7232 bytes, 8 allocs
init regexp @0.60 ms, 0 ms clock, 0 bytes, 0 allocs
init cmd/link/internal/wasm @0.60 ms, 0.012 ms clock, 3384 bytes, 51 allocs
init internal/bytealg @0 ms, 0 ms clock, 0 bytes, 0 allocs
init runtime @0.033 ms, 0.077 ms clock, 0 bytes, 0 allocs
init errors @0.37 ms, 0.034 ms clock, 0 bytes, 0 allocs
init strconv @0.43 ms, 0.021 ms clock, 32 bytes, 2 allocs
init sync @0.47 ms, 0.017 ms clock, 16 bytes, 1 allocs
init unicode @0.49 ms, 0.35 ms clock, 24360 bytes, 29 allocs
init reflect @0.86 ms, 0.021 ms clock, 0 bytes, 0 allocs
init io @0.90 ms, 0.018 ms clock, 144 bytes, 9 allocs
init internal/oserror @0.93 ms, 0 ms clock, 80 bytes, 5 allocs
init syscall @0.94 ms, 0.035 ms clock, 432 bytes, 2 allocs
init time @0.99 ms, 0.038 ms clock, 384 bytes, 8 allocs
init path @1.0 ms, 0 ms clock, 16 bytes, 1 allocs
init io/fs @1.0 ms, 0.018 ms clock, 16 bytes, 1 allocs
init internal/poll @1.0 ms, 0.018 ms clock, 64 bytes, 4 allocs
init os @1.1 ms, 0.082 ms clock, 3064 bytes, 20 allocs
init fmt @1.2 ms, 0.017 ms clock, 32 bytes, 2 allocs
init bytes @1.2 ms, 0.018 ms clock, 48 bytes, 3 allocs
init github.com/hashicorp/hcl/hcl/strconv @1.2 ms, 0.017 ms clock, 16 bytes, 1 allocs
init regexp/syntax @1.3 ms, 0.027 ms clock, 6816 bytes, 7 allocs
init regexp @1.3 ms, 0.017 ms clock, 0 bytes, 0 allocs
init github.com/hashicorp/hcl/hcl/parser @1.3 ms, 0.017 ms clock, 16 bytes, 1 allocs
init github.com/hashicorp/hcl/json/parser @1.4 ms, 0.016 ms clock, 16 bytes, 1 allocs
init github.com/hashicorp/hcl @1.4 ms, 0.092 ms clock, 16 bytes, 2 allocs
init encoding/binary @1.5 ms, 0.018 ms clock, 16 bytes, 1 allocs
init crypto @1.5 ms, 0.005 ms clock, 160 bytes, 1 allocs
init golang.org/x/crypto/blake2b @1.6 ms, 0.001 ms clock, 32 bytes, 2 allocs
init github.com/hashicorp/consul/acl @1.6 ms, 0.018 ms clock, 64 bytes, 4 allocs
init encoding/base64 @1.6 ms, 0.022 ms clock, 1408 bytes, 4 allocs
init encoding/json @1.6 ms, 0.017 ms clock, 32 bytes, 2 allocs
init math/rand @1.7 ms, 0.090 ms clock, 5440 bytes, 3 allocs
init context @1.8 ms, 0.017 ms clock, 128 bytes, 4 allocs
init vendor/golang.org/x/net/dns/dnsmessage @1.8 ms, 0.025 ms clock, 1616 bytes, 27 allocs
init vendor/golang.org/x/net/route @1.8 ms, 0.048 ms clock, 1576 bytes, 25 allocs
init net @1.9 ms, 0.13 ms clock, 2840 bytes, 74 allocs
init log @2.0 ms, 0.018 ms clock, 80 bytes, 1 allocs
init bufio @2.1 ms, 0.017 ms clock, 176 bytes, 11 allocs
init path/filepath @2.1 ms, 0 ms clock, 16 bytes, 1 allocs
init io/ioutil @2.1 ms, 0.021 ms clock, 16 bytes, 1 allocs
init github.com/hashicorp/yamux @2.1 ms, 0.13 ms clock, 1824 bytes, 31 allocs
init github.com/mitchellh/reflectwalk @2.3 ms, 0.017 ms clock, 16 bytes, 1 allocs
init github.com/mitchellh/copystructure @2.3 ms, 0.018 ms clock, 296 bytes, 4 allocs
init crypto/cipher @2.3 ms, 0.017 ms clock, 16 bytes, 1 allocs
init crypto/aes @2.3 ms, 0.018 ms clock, 16 bytes, 1 allocs
init math/big @2.4 ms, 0.017 ms clock, 32 bytes, 2 allocs
init crypto/rand @2.4 ms, 0.019 ms clock, 96 bytes, 3 allocs
init crypto/sha512 @2.4 ms, 0.016 ms clock, 0 bytes, 0 allocs
init encoding/asn1 @2.5 ms, 0.034 ms clock, 224 bytes, 7 allocs
init vendor/golang.org/x/crypto/cryptobyte @2.5 ms, 0.017 ms clock, 48 bytes, 2 allocs
init crypto/ecdsa @2.5 ms, 0 ms clock, 48 bytes, 3 allocs
init crypto/rsa @2.5 ms, 0.020 ms clock, 664 bytes, 18 allocs
init crypto/sha1 @2.6 ms, 0.017 ms clock, 0 bytes, 0 allocs
init crypto/sha256 @2.6 ms, 0 ms clock, 0 bytes, 0 allocs
init crypto/md5 @2.6 ms, 0.017 ms clock, 0 bytes, 0 allocs
init encoding/hex @2.6 ms, 0.017 ms clock, 16 bytes, 1 allocs
init crypto/x509/pkix @2.6 ms, 0.001 ms clock, 624 bytes, 2 allocs
init crypto/x509/internal/macos @2.7 ms, 0.059 ms clock, 16 bytes, 1 allocs
init crypto/dsa @2.7 ms, 0.017 ms clock, 16 bytes, 1 allocs
init crypto/x509 @2.8 ms, 0.040 ms clock, 992 bytes, 8 allocs
init vendor/golang.org/x/crypto/chacha20poly1305 @2.8 ms, 0.017 ms clock, 16 bytes, 1 allocs
init vendor/golang.org/x/crypto/curve25519 @2.8 ms, 0 ms clock, 0 bytes, 0 allocs
init crypto/tls @2.8 ms, 0.024 ms clock, 1600 bytes, 11 allocs
init mime @2.9 ms, 0.019 ms clock, 1232 bytes, 4 allocs
init mime/multipart @2.9 ms, 0.018 ms clock, 192 bytes, 4 allocs
init compress/flate @2.9 ms, 0.042 ms clock, 4240 bytes, 7 allocs
init hash/crc32 @3.0 ms, 0.015 ms clock, 1024 bytes, 1 allocs
init compress/gzip @3.0 ms, 0 ms clock, 32 bytes, 2 allocs
init vendor/golang.org/x/text/transform @3.0 ms, 0 ms clock, 80 bytes, 5 allocs
init vendor/golang.org/x/text/unicode/bidi @3.0 ms, 0.019 ms clock, 272 bytes, 2 allocs
init vendor/golang.org/x/text/secure/bidirule @3.1 ms, 0.018 ms clock, 16 bytes, 1 allocs
init vendor/golang.org/x/text/unicode/norm @3.1 ms, 0.017 ms clock, 0 bytes, 0 allocs
init vendor/golang.org/x/net/idna @3.1 ms, 0.017 ms clock, 0 bytes, 0 allocs
init vendor/golang.org/x/net/http/httpguts @3.1 ms, 0.002 ms clock, 688 bytes, 2 allocs
init vendor/golang.org/x/net/http2/hpack @3.1 ms, 0.16 ms clock, 21112 bytes, 27 allocs
init net/http/internal @3.3 ms, 0.039 ms clock, 1808 bytes, 3 allocs
init vendor/golang.org/x/net/http/httpproxy @3.4 ms, 0 ms clock, 336 bytes, 2 allocs
init net/http @3.4 ms, 0.070 ms clock, 10280 bytes, 113 allocs
init os/signal @3.5 ms, 0.018 ms clock, 0 bytes, 0 allocs
init github.com/armon/go-metrics @3.5 ms, 0.038 ms clock, 592 bytes, 5 allocs
init os/exec @3.6 ms, 0.037 ms clock, 16 bytes, 1 allocs
init github.com/hashicorp/go-sockaddr @3.6 ms, 0.23 ms clock, 22728 bytes, 163 allocs
init golang.org/x/sys/unix @3.9 ms, 0.016 ms clock, 48 bytes, 1 allocs
init encoding/base32 @3.9 ms, 0.018 ms clock, 640 bytes, 2 allocs
init golang.org/x/net/internal/socket @3.9 ms, 0.017 ms clock, 112 bytes, 3 allocs
init golang.org/x/net/ipv4 @4.0 ms, 0.005 ms clock, 2400 bytes, 32 allocs
init golang.org/x/net/ipv6 @4.0 ms, 0.026 ms clock, 3760 bytes, 30 allocs
init github.com/miekg/dns @4.0 ms, 0.11 ms clock, 16096 bytes, 50 allocs
init encoding/gob @4.1 ms, 0.76 ms clock, 44960 bytes, 669 allocs
init text/template/parse @4.9 ms, 0.018 ms clock, 464 bytes, 2 allocs
init html @5.0 ms, 0.017 ms clock, 224 bytes, 2 allocs
init text/template @5.0 ms, 0.017 ms clock, 48 bytes, 3 allocs
init html/template @5.0 ms, 0.059 ms clock, 10584 bytes, 30 allocs
init go/token @5.1 ms, 0.004 ms clock, 1776 bytes, 5 allocs
init net/rpc @5.1 ms, 0.47 ms clock, 8568 bytes, 136 allocs
init github.com/hashicorp/go-msgpack/codec @5.6 ms, 0.036 ms clock, 104 bytes, 3 allocs
init github.com/google/btree @5.6 ms, 0.020 ms clock, 384 bytes, 2 allocs
init compress/lzw @5.7 ms, 0.001 ms clock, 32 bytes, 2 allocs
init github.com/hashicorp/memberlist @5.7 ms, 0.14 ms clock, 4480 bytes, 13 allocs
init github.com/hashicorp/serf/serf @5.9 ms, 0.071 ms clock, 120 bytes, 4 allocs
init github.com/hashicorp/go-retryablehttp @5.9 ms, 0.032 ms clock, 8096 bytes, 59 allocs
init github.com/circonus-labs/circonus-gometrics/api @6.0 ms, 0.037 ms clock, 64 bytes, 4 allocs
init github.com/circonus-labs/circonus-gometrics/checkmgr @6.0 ms, 0.036 ms clock, 0 bytes, 0 allocs
init github.com/golang/protobuf/proto @6.1 ms, 0.019 ms clock, 800 bytes, 24 allocs
init github.com/golang/protobuf/ptypes/timestamp @6.1 ms, 0.035 ms clock, 928 bytes, 3 allocs
init github.com/prometheus/client_model/go @6.2 ms, 0.040 ms clock, 1808 bytes, 7 allocs
init github.com/prometheus/common/model @6.2 ms, 0.044 ms clock, 10632 bytes, 143 allocs
init expvar @6.3 ms, 0.020 ms clock, 912 bytes, 15 allocs
init github.com/prometheus/procfs @6.3 ms, 0.086 ms clock, 47008 bytes, 434 allocs
init github.com/matttproud/golang_protobuf_extensions/pbutil @6.4 ms, 0 ms clock, 16 bytes, 1 allocs
init github.com/golang/protobuf/ptypes/any @6.4 ms, 0.018 ms clock, 0 bytes, 0 allocs
init github.com/golang/protobuf/ptypes/duration @6.4 ms, 0.003 ms clock, 2304 bytes, 2 allocs
init github.com/prometheus/common/expfmt @6.4 ms, 0.018 ms clock, 288 bytes, 4 allocs
init github.com/prometheus/client_golang/prometheus @6.5 ms, 0.50 ms clock, 25456 bytes, 257 allocs
init github.com/armon/go-metrics/prometheus @7.0 ms, 0.020 ms clock, 776 bytes, 11 allocs
init github.com/hashicorp/consul/ipaddr @7.0 ms, 0.005 ms clock, 1056 bytes, 52 allocs
init github.com/hashicorp/consul/sdk/freeport @7.0 ms, 0.013 ms clock, 7840 bytes, 105 allocs
init github.com/hashicorp/consul/lib @7.0 ms, 0.018 ms clock, 72 bytes, 2 allocs
init github.com/fatih/color @7.1 ms, 0.019 ms clock, 48 bytes, 1 allocs
init github.com/hashicorp/go-hclog @7.1 ms, 0.028 ms clock, 7832 bytes, 52 allocs
init github.com/hashicorp/consul/api @7.1 ms, 0.036 ms clock, 360 bytes, 17 allocs
init github.com/davecgh/go-spew/spew @7.2 ms, 0.074 ms clock, 19096 bytes, 133 allocs
init github.com/stretchr/objx @7.3 ms, 0.022 ms clock, 4792 bytes, 48 allocs
init gopkg.in/yaml%2ev2 @7.3 ms, 0.082 ms clock, 27120 bytes, 265 allocs
init flag @7.4 ms, 0.018 ms clock, 160 bytes, 5 allocs
init net/http/httptest @7.4 ms, 0 ms clock, 0 bytes, 0 allocs
init github.com/stretchr/testify/assert @7.5 ms, 0 ms clock, 16 bytes, 1 allocs
init github.com/hashicorp/consul/lib/decode @7.5 ms, 0.018 ms clock, 0 bytes, 0 allocs
init github.com/hashicorp/consul/logging @7.5 ms, 0.017 ms clock, 256 bytes, 2 allocs
init github.com/hashicorp/go-version @7.5 ms, 0.12 ms clock, 76984 bytes, 549 allocs
init testing @7.7 ms, 0 ms clock, 32 bytes, 2 allocs
init github.com/hashicorp/raft @7.7 ms, 0.040 ms clock, 320 bytes, 20 allocs
init github.com/hashicorp/consul/agent/structs @7.7 ms, 0.031 ms clock, 7736 bytes, 108 allocs
init github.com/hashicorp/consul/agent/dns @7.8 ms, 0.019 ms clock, 952 bytes, 13 allocs
init github.com/hashicorp/consul/agent/metadata @7.8 ms, 0.004 ms clock, 2808 bytes, 25 allocs
init github.com/hashicorp/go-connlimit @7.8 ms, 0.018 ms clock, 16 bytes, 1 allocs
init github.com/hashicorp/go-memdb @7.9 ms, 0.18 ms clock, 400 bytes, 11 allocs
init google.golang.org/grpc/codes @8.1 ms, 0.003 ms clock, 752 bytes, 2 allocs
init google.golang.org/grpc/grpclog @8.1 ms, 0.037 ms clock, 616 bytes, 17 allocs
init google.golang.org/grpc/credentials @8.1 ms, 0.002 ms clock, 864 bytes, 4 allocs
init google.golang.org/grpc/naming @8.1 ms, 0 ms clock, 64 bytes, 4 allocs
init google.golang.org/genproto/googleapis/rpc/status @8.1 ms, 0.017 ms clock, 0 bytes, 0 allocs
init google.golang.org/grpc/status @8.2 ms, 0 ms clock, 0 bytes, 0 allocs
init google.golang.org/grpc/resolver @8.2 ms, 0 ms clock, 48 bytes, 1 allocs
init google.golang.org/grpc/balancer @8.2 ms, 0 ms clock, 96 bytes, 4 allocs
init google.golang.org/grpc/internal/grpcrand @8.2 ms, 0.045 ms clock, 5424 bytes, 2 allocs
init google.golang.org/grpc/internal/backoff @8.3 ms, 0 ms clock, 0 bytes, 0 allocs
init golang.org/x/text/transform @8.3 ms, 0.017 ms clock, 80 bytes, 5 allocs
init golang.org/x/text/unicode/bidi @8.3 ms, 0.001 ms clock, 272 bytes, 2 allocs
init golang.org/x/text/secure/bidirule @8.3 ms, 0.017 ms clock, 16 bytes, 1 allocs
init golang.org/x/text/unicode/norm @8.3 ms, 0 ms clock, 0 bytes, 0 allocs
init golang.org/x/net/idna @8.3 ms, 0.017 ms clock, 0 bytes, 0 allocs
init golang.org/x/net/http/httpguts @8.4 ms, 0.005 ms clock, 848 bytes, 3 allocs
init golang.org/x/net/http2/hpack @8.4 ms, 0.048 ms clock, 22440 bytes, 32 allocs
init golang.org/x/net/http2 @8.4 ms, 0.043 ms clock, 3824 bytes, 57 allocs
init google.golang.org/grpc/internal/transport @8.5 ms, 0.020 ms clock, 896 bytes, 13 allocs
init google.golang.org/grpc/balancer/roundrobin @8.5 ms, 0 ms clock, 336 bytes, 2 allocs
init google.golang.org/grpc/internal/resolver/dns @8.5 ms, 0.017 ms clock, 320 bytes, 4 allocs
init google.golang.org/grpc/internal/resolver/passthrough @8.6 ms, 0 ms clock, 0 bytes, 0 allocs
init google.golang.org/grpc/encoding @8.6 ms, 0 ms clock, 96 bytes, 2 allocs
init google.golang.org/grpc/encoding/proto @8.6 ms, 0 ms clock, 288 bytes, 1 allocs
init google.golang.org/grpc/internal/envconfig @8.6 ms, 0 ms clock, 0 bytes, 0 allocs
init net/http/httputil @8.6 ms, 0.017 ms clock, 288 bytes, 6 allocs
init golang.org/x/net/trace @8.6 ms, 0.044 ms clock, 16864 bytes, 8 allocs
init google.golang.org/grpc/binarylog/grpc_binarylog_v1 @8.7 ms, 0.021 ms clock, 1344 bytes, 12 allocs
init google.golang.org/grpc/internal/binarylog @8.7 ms, 0.056 ms clock, 25752 bytes, 278 allocs
init google.golang.org/grpc @8.8 ms, 0.28 ms clock, 20080 bytes, 433 allocs
init golang.org/x/net/internal/socks @9.1 ms, 0.015 ms clock, 0 bytes, 0 allocs
init github.com/docker/go-connections/sockets @9.1 ms, 0.015 ms clock, 32 bytes, 2 allocs
init google.golang.org/grpc/health/grpc_health_v1 @9.1 ms, 0.004 ms clock, 736 bytes, 5 allocs
init github.com/hashicorp/consul/agent/checks @9.1 ms, 0.015 ms clock, 64 bytes, 2 allocs
init github.com/hashicorp/consul/agent/connect @9.2 ms, 0.043 ms clock, 21616 bytes, 231 allocs
init github.com/aws/aws-sdk-go/internal/ini @9.2 ms, 0.019 ms clock, 2304 bytes, 22 allocs
init github.com/aws/aws-sdk-go/aws/credentials @9.3 ms, 0.017 ms clock, 496 bytes, 7 allocs
init github.com/aws/aws-sdk-go/aws/endpoints @9.3 ms, 1.2 ms clock, 652696 bytes, 4159 allocs
init github.com/aws/aws-sdk-go/aws @10 ms, 0.015 ms clock, 128 bytes, 2 allocs
init github.com/jmespath/go-jmespath @10 ms, 0.018 ms clock, 1584 bytes, 6 allocs
init github.com/aws/aws-sdk-go/aws/awsutil @10 ms, 0.020 ms clock, 3416 bytes, 31 allocs
init github.com/aws/aws-sdk-go/aws/request @10 ms, 0.018 ms clock, 976 bytes, 9 allocs
init github.com/aws/aws-sdk-go/internal/sdkrand @10 ms, 0.032 ms clock, 5448 bytes, 3 allocs
init github.com/aws/aws-sdk-go/private/protocol @10 ms, 0.015 ms clock, 0 bytes, 0 allocs
init github.com/aws/aws-sdk-go/private/protocol/rest @10 ms, 0.019 ms clock, 56 bytes, 3 allocs
init github.com/aws/aws-sdk-go/aws/signer/v4 @10 ms, 0.034 ms clock, 1392 bytes, 4 allocs
init encoding/xml @10 ms, 0.034 ms clock, 19464 bytes, 8 allocs
init github.com/aws/aws-sdk-go/service/sts @10 ms, 0.015 ms clock, 0 bytes, 0 allocs
init github.com/aws/aws-sdk-go/aws/corehandlers @10 ms, 0.035 ms clock, 2312 bytes, 31 allocs
init github.com/aws/aws-sdk-go/private/protocol/json/jsonutil @10 ms, 0.015 ms clock, 48 bytes, 2 allocs
init github.com/aws/aws-sdk-go/aws/session @10 ms, 0.015 ms clock, 320 bytes, 5 allocs
init github.com/gogo/protobuf/proto @11 ms, 0.069 ms clock, 2576 bytes, 29 allocs
init github.com/gogo/protobuf/protoc-gen-gogo/descriptor @11 ms, 0.080 ms clock, 12288 bytes, 34 allocs
init github.com/gogo/protobuf/gogoproto @11 ms, 0.015 ms clock, 3808 bytes, 20 allocs
init github.com/hashicorp/consul/proto/pbacl @11 ms, 0.017 ms clock, 392 bytes, 5 allocs
init github.com/hashicorp/consul/agent/consul/state @11 ms, 0.16 ms clock, 16216 bytes, 178 allocs
init github.com/hashicorp/vault/sdk/helper/consts @11 ms, 0.016 ms clock, 64 bytes, 4 allocs
init github.com/golang/snappy @11 ms, 0.026 ms clock, 9296 bytes, 7 allocs
init github.com/pierrec/lz4 @11 ms, 0.015 ms clock, 320 bytes, 12 allocs
init gopkg.in/square/go-jose.v2/json @11 ms, 0.016 ms clock, 80 bytes, 5 allocs
init gopkg.in/square/go-jose%2ev2 @11 ms, 0.015 ms clock, 304 bytes, 8 allocs
init gopkg.in/square/go-jose.v2/jwt @11 ms, 0.015 ms clock, 176 bytes, 11 allocs
init github.com/hashicorp/vault/api @11 ms, 0.030 ms clock, 128 bytes, 8 allocs
init github.com/hashicorp/consul/agent/connect/ca @11 ms, 0.015 ms clock, 304 bytes, 8 allocs
init github.com/hashicorp/go-bexpr @11 ms, 0.020 ms clock, 2280 bytes, 15 allocs
init github.com/hashicorp/consul/agent/consul/authmethod @11 ms, 0.015 ms clock, 48 bytes, 1 allocs
init k8s.io/apimachinery/pkg/runtime/schema @11 ms, 0.015 ms clock, 0 bytes, 0 allocs
init gopkg.in/inf%2ev0 @11 ms, 0.046 ms clock, 9312 bytes, 229 allocs
init k8s.io/apimachinery/pkg/api/resource @11 ms, 0.039 ms clock, 4328 bytes, 63 allocs
init k8s.io/apimachinery/pkg/conversion @11 ms, 0.015 ms clock, 0 bytes, 0 allocs
init k8s.io/apimachinery/pkg/fields @11 ms, 0 ms clock, 160 bytes, 2 allocs
init k8s.io/apimachinery/pkg/util/errors @11 ms, 0.015 ms clock, 16 bytes, 1 allocs
init k8s.io/apimachinery/pkg/util/validation @11 ms, 0.055 ms clock, 43696 bytes, 526 allocs
init os/user @11 ms, 0.015 ms clock, 0 bytes, 0 allocs
init k8s.io/klog @12 ms, 0.13 ms clock, 4616 bytes, 16 allocs
init k8s.io/apimachinery/pkg/labels @12 ms, 0.016 ms clock, 464 bytes, 2 allocs
init k8s.io/apimachinery/pkg/util/runtime @12 ms, 0.015 ms clock, 64 bytes, 2 allocs
init k8s.io/apimachinery/pkg/util/naming @12 ms, 0.011 ms clock, 8536 bytes, 48 allocs
init internal/lazyregexp @12 ms, 0 ms clock, 0 bytes, 0 allocs
init go/doc @12 ms, 0.004 ms clock, 2208 bytes, 18 allocs
init go/parser @12 ms, 0.002 ms clock, 768 bytes, 7 allocs
init k8s.io/apimachinery/pkg/runtime @12 ms, 0.079 ms clock, 944 bytes, 12 allocs
init github.com/google/gofuzz @12 ms, 0.017 ms clock, 1056 bytes, 4 allocs
init k8s.io/apimachinery/pkg/util/intstr @12 ms, 0.016 ms clock, 104 bytes, 4 allocs
init k8s.io/apimachinery/pkg/util/net @12 ms, 0.001 ms clock, 208 bytes, 3 allocs
init k8s.io/apimachinery/pkg/apis/meta/v1 @12 ms, 0.30 ms clock, 33432 bytes, 163 allocs
init k8s.io/api/authentication/v1 @12 ms, 0.051 ms clock, 3104 bytes, 23 allocs
init github.com/googleapis/gnostic/extensions @12 ms, 0.005 ms clock, 5312 bytes, 3 allocs
init github.com/googleapis/gnostic/OpenAPIv2 @12 ms, 0.050 ms clock, 18136 bytes, 78 allocs
init github.com/modern-go/concurrent @12 ms, 0.016 ms clock, 336 bytes, 7 allocs
init github.com/modern-go/reflect2 @12 ms, 0.035 ms clock, 6352 bytes, 125 allocs
init github.com/json-iterator/go @12 ms, 0.23 ms clock, 21216 bytes, 267 allocs
init k8s.io/apimachinery/pkg/runtime/serializer/json @13 ms, 0.034 ms clock, 1632 bytes, 26 allocs
init k8s.io/apimachinery/pkg/version @13 ms, 0.026 ms clock, 8840 bytes, 103 allocs
init k8s.io/api/admissionregistration/v1 @13 ms, 0.032 ms clock, 24576 bytes, 32 allocs
init k8s.io/api/admissionregistration/v1beta1 @13 ms, 0.062 ms clock, 4064 bytes, 26 allocs
init k8s.io/api/core/v1 @13 ms, 0.35 ms clock, 127216 bytes, 429 allocs
init k8s.io/api/apps/v1 @13 ms, 0.065 ms clock, 11264 bytes, 63 allocs
init k8s.io/api/apps/v1beta1 @13 ms, 0.061 ms clock, 9840 bytes, 53 allocs
init k8s.io/api/apps/v1beta2 @13 ms, 0.051 ms clock, 15696 bytes, 77 allocs
init k8s.io/api/auditregistration/v1alpha1 @14 ms, 0.049 ms clock, 3104 bytes, 23 allocs
init k8s.io/api/authentication/v1beta1 @14 ms, 0.032 ms clock, 42720 bytes, 16 allocs
init k8s.io/api/authorization/v1 @14 ms, 0.061 ms clock, 45456 bytes, 33 allocs
init k8s.io/api/authorization/v1beta1 @14 ms, 0.054 ms clock, 4848 bytes, 33 allocs
init k8s.io/api/autoscaling/v1 @14 ms, 0.073 ms clock, 6512 bytes, 44 allocs
init k8s.io/api/autoscaling/v2beta1 @14 ms, 0.055 ms clock, 5504 bytes, 38 allocs
init k8s.io/api/autoscaling/v2beta2 @14 ms, 0.057 ms clock, 6512 bytes, 44 allocs
init k8s.io/api/batch/v1 @14 ms, 0.019 ms clock, 2096 bytes, 16 allocs
init k8s.io/api/batch/v1beta1 @14 ms, 0.019 ms clock, 2144 bytes, 18 allocs
init k8s.io/api/batch/v2alpha1 @14 ms, 0.020 ms clock, 2144 bytes, 18 allocs
init k8s.io/api/certificates/v1beta1 @14 ms, 0.021 ms clock, 1472 bytes, 14 allocs
init k8s.io/api/coordination/v1 @14 ms, 0.017 ms clock, 1136 bytes, 12 allocs
init k8s.io/api/coordination/v1beta1 @14 ms, 0.019 ms clock, 3824 bytes, 13 allocs
init k8s.io/api/discovery/v1alpha1 @14 ms, 0.035 ms clock, 1808 bytes, 16 allocs
init k8s.io/api/events/v1beta1 @14 ms, 0.036 ms clock, 2000 bytes, 12 allocs
init k8s.io/api/extensions/v1beta1 @14 ms, 0.093 ms clock, 21584 bytes, 122 allocs
init k8s.io/api/networking/v1 @14 ms, 0.066 ms clock, 2816 bytes, 22 allocs
init k8s.io/api/networking/v1beta1 @15 ms, 0.050 ms clock, 3488 bytes, 26 allocs
init k8s.io/api/node/v1alpha1 @15 ms, 0.018 ms clock, 1808 bytes, 16 allocs
init k8s.io/api/node/v1beta1 @15 ms, 0.049 ms clock, 1472 bytes, 14 allocs
init k8s.io/api/policy/v1beta1 @15 ms, 0.061 ms clock, 7664 bytes, 45 allocs
init k8s.io/api/rbac/v1 @15 ms, 0.052 ms clock, 4160 bytes, 30 allocs
init k8s.io/api/rbac/v1alpha1 @15 ms, 0.051 ms clock, 4160 bytes, 30 allocs
init k8s.io/api/rbac/v1beta1 @15 ms, 0.036 ms clock, 4160 bytes, 30 allocs
init k8s.io/api/scheduling/v1 @15 ms, 0.032 ms clock, 800 bytes, 10 allocs
init k8s.io/api/scheduling/v1alpha1 @15 ms, 0.017 ms clock, 800 bytes, 10 allocs
init k8s.io/api/scheduling/v1beta1 @15 ms, 0.032 ms clock, 800 bytes, 10 allocs
init k8s.io/api/settings/v1alpha1 @15 ms, 0.020 ms clock, 1136 bytes, 12 allocs
init k8s.io/api/storage/v1 @15 ms, 0.051 ms clock, 3392 bytes, 23 allocs
init k8s.io/api/storage/v1alpha1 @15 ms, 0.020 ms clock, 2496 bytes, 19 allocs
init k8s.io/api/storage/v1beta1 @15 ms, 0.041 ms clock, 5792 bytes, 38 allocs
init k8s.io/client-go/kubernetes/scheme @15 ms, 1.6 ms clock, 419240 bytes, 3780 allocs
init k8s.io/client-go/tools/clientcmd/api @17 ms, 0.017 ms clock, 56 bytes, 6 allocs
init golang.org/x/oauth2 @17 ms, 0.015 ms clock, 96 bytes, 3 allocs
init k8s.io/client-go/transport @17 ms, 0.020 ms clock, 256 bytes, 3 allocs
init k8s.io/apimachinery/pkg/runtime/serializer/streaming @17 ms, 0.015 ms clock, 80 bytes, 2 allocs
init k8s.io/client-go/pkg/apis/clientauthentication @17 ms, 0 ms clock, 24 bytes, 2 allocs
init k8s.io/client-go/pkg/apis/clientauthentication/v1alpha1 @17 ms, 0 ms clock, 40 bytes, 3 allocs
init k8s.io/client-go/pkg/apis/clientauthentication/v1beta1 @17 ms, 0.015 ms clock, 40 bytes, 3 allocs
init k8s.io/client-go/plugin/pkg/client/auth/exec @17 ms, 0.13 ms clock, 39544 bytes, 383 allocs
init k8s.io/client-go/rest @17 ms, 0.015 ms clock, 192 bytes, 4 allocs
init k8s.io/apimachinery/pkg/api/meta @17 ms, 0.041 ms clock, 49504 bytes, 12 allocs
init k8s.io/client-go/tools/reference @17 ms, 0 ms clock, 16 bytes, 1 allocs
init github.com/hashicorp/consul/agent/consul/authmethod/kubeauth @17 ms, 0.035 ms clock, 13776 bytes, 146 allocs
init github.com/pquerna/cachecontrol/cacheobject @17 ms, 0.015 ms clock, 240 bytes, 15 allocs
init github.com/coreos/go-oidc @17 ms, 0.016 ms clock, 32 bytes, 2 allocs
init github.com/hashicorp/consul/agent/consul/authmethod/ssoauth @18 ms, 0.015 ms clock, 0 bytes, 0 allocs
init github.com/gogo/protobuf/types @18 ms, 0.16 ms clock, 11528 bytes, 62 allocs
init github.com/hashicorp/consul/proto @18 ms, 0.001 ms clock, 0 bytes, 0 allocs
init github.com/hashicorp/consul/proto/pbconfig @18 ms, 0.039 ms clock, 968 bytes, 7 allocs
init github.com/hashicorp/consul/proto/pbcommon @18 ms, 0.018 ms clock, 496 bytes, 9 allocs
init github.com/hashicorp/consul/proto/pbconnect @18 ms, 0.025 ms clock, 20456 bytes, 7 allocs
init github.com/hashicorp/consul/proto/pbautoconf @18 ms, 0.035 ms clock, 104 bytes, 4 allocs
init github.com/hashicorp/consul/tlsutil @18 ms, 0.016 ms clock, 376 bytes, 7 allocs
init github.com/hashicorp/consul/agent/consul/wanfed @18 ms, 0.015 ms clock, 64 bytes, 2 allocs
init github.com/hashicorp/go-raftchunking/types @18 ms, 0.001 ms clock, 0 bytes, 0 allocs
init github.com/hashicorp/consul/agent/consul/fsm @18 ms, 0.039 ms clock, 1448 bytes, 10 allocs
init github.com/boltdb/bolt @18 ms, 0.016 ms clock, 272 bytes, 17 allocs
init github.com/hashicorp/raft-boltdb @18 ms, 0 ms clock, 16 bytes, 1 allocs
init archive/tar @18 ms, 0.047 ms clock, 736 bytes, 11 allocs
init github.com/hashicorp/consul/agent/consul @18 ms, 0.93 ms clock, 519584 bytes, 6922 allocs
init github.com/hashicorp/go-sockaddr/template @19 ms, 0.004 ms clock, 2208 bytes, 10 allocs
init github.com/hashicorp/consul/agent/config @19 ms, 0.021 ms clock, 720 bytes, 5 allocs
init github.com/golang/protobuf/ptypes/struct @19 ms, 0.024 ms clock, 736 bytes, 5 allocs
init github.com/golang/protobuf/jsonpb @19 ms, 0 ms clock, 256 bytes, 2 allocs
init github.com/denverdino/aliyungo/common @19 ms, 0.014 ms clock, 48 bytes, 1 allocs
init github.com/aws/aws-sdk-go/service/ec2 @19 ms, 0.015 ms clock, 0 bytes, 0 allocs
init net/http/cookiejar @19 ms, 0.014 ms clock, 48 bytes, 3 allocs
init github.com/Azure/go-autorest/autorest/date @19 ms, 0 ms clock, 0 bytes, 0 allocs
init github.com/dgrijalva/jwt-go @19 ms, 0.005 ms clock, 1360 bytes, 33 allocs
init github.com/Azure/go-autorest/autorest/adal @19 ms, 0.018 ms clock, 800 bytes, 16 allocs
init github.com/Azure/go-autorest/logger @19 ms, 0.014 ms clock, 0 bytes, 0 allocs
init github.com/Azure/go-autorest/autorest @19 ms, 0.019 ms clock, 112 bytes, 2 allocs
init github.com/Azure/go-autorest/autorest/azure @19 ms, 0.020 ms clock, 2048 bytes, 6 allocs
init github.com/dimchansky/utfbom @19 ms, 0.013 ms clock, 16 bytes, 1 allocs
init golang.org/x/crypto/pkcs12 @19 ms, 0.014 ms clock, 80 bytes, 5 allocs
init github.com/google/go-querystring/query @20 ms, 0.014 ms clock, 40 bytes, 2 allocs
init github.com/digitalocean/godo @20 ms, 0.013 ms clock, 40 bytes, 2 allocs
init cloud.google.com/go/compute/metadata @20 ms, 0.015 ms clock, 224 bytes, 4 allocs
init google.golang.org/api/googleapi/internal/uritemplates @20 ms, 0.037 ms clock, 7776 bytes, 109 allocs
init go.opencensus.io/internal @20 ms, 0.006 ms clock, 40 bytes, 2 allocs
init go.opencensus.io/trace/tracestate @20 ms, 0.44 ms clock, 462688 bytes, 2407 allocs
init go.opencensus.io/trace @20 ms, 0.068 ms clock, 5648 bytes, 11 allocs
init go.opencensus.io/resource @20 ms, 0.12 ms clock, 218136 bytes, 1585 allocs
init runtime/pprof @20 ms, 0.014 ms clock, 32 bytes, 2 allocs
init go.opencensus.io/tag @20 ms, 0 ms clock, 32 bytes, 2 allocs
init go.opencensus.io/stats @20 ms, 0 ms clock, 48 bytes, 1 allocs
init go.opencensus.io/stats/view @20 ms, 0.024 ms clock, 17424 bytes, 16 allocs
init go.opencensus.io/plugin/ochttp @20 ms, 0.022 ms clock, 2728 bytes, 32 allocs
init gopkg.in/resty%2ev1 @20 ms, 0.082 ms clock, 23480 bytes, 129 allocs
init github.com/linode/linodego @21 ms, 0 ms clock, 0 bytes, 0 allocs
init github.com/hashicorp/mdns @21 ms, 0.015 ms clock, 32 bytes, 2 allocs
init github.com/gophercloud/gophercloud/pagination @21 ms, 0.013 ms clock, 16 bytes, 1 allocs
init github.com/gophercloud/gophercloud/openstack/utils @21 ms, 0.014 ms clock, 208 bytes, 2 allocs
init github.com/packethost/packngo @21 ms, 0.013 ms clock, 24 bytes, 1 allocs
init github.com/nicolai86/scaleway-sdk @21 ms, 0.014 ms clock, 0 bytes, 0 allocs
init github.com/softlayer/softlayer-go/config @21 ms, 0.028 ms clock, 8832 bytes, 110 allocs
init golang.org/x/text/encoding @21 ms, 0 ms clock, 16 bytes, 1 allocs
init golang.org/x/text/encoding/charmap @21 ms, 0 ms clock, 0 bytes, 0 allocs
init github.com/renier/xmlrpc @21 ms, 0.034 ms clock, 18592 bytes, 101 allocs
init github.com/softlayer/softlayer-go/session @21 ms, 0.016 ms clock, 80 bytes, 1 allocs
init golang.org/x/crypto/curve25519 @21 ms, 0.013 ms clock, 0 bytes, 0 allocs
init golang.org/x/crypto/ssh @21 ms, 0.28 ms clock, 15800 bytes, 179 allocs
init golang.org/x/crypto/ssh/agent @21 ms, 0.013 ms clock, 32 bytes, 2 allocs
init github.com/joyent/triton-go/authentication @21 ms, 0.082 ms clock, 304 bytes, 3 allocs
init github.com/joyent/triton-go/client @21 ms, 0.017 ms clock, 912 bytes, 9 allocs
init github.com/joyent/triton-go/compute @21 ms, 0.014 ms clock, 192 bytes, 2 allocs
init github.com/vmware/govmomi/vim25/types @21 ms, 2.3 ms clock, 674152 bytes, 203 allocs
init github.com/vmware/govmomi/vim25/xml @24 ms, 0.032 ms clock, 21560 bytes, 12 allocs
init github.com/vmware/govmomi/vim25/soap @24 ms, 0.017 ms clock, 1768 bytes, 22 allocs
init github.com/sirupsen/logrus @24 ms, 0.027 ms clock, 288 bytes, 4 allocs
init github.com/hashicorp/vic/pkg/vsphere/tags @24 ms, 0.013 ms clock, 240 bytes, 3 allocs
init github.com/vmware/govmomi/vim25/mo @24 ms, 0.074 ms clock, 22928 bytes, 39 allocs
init github.com/vmware/govmomi/session @24 ms, 0.014 ms clock, 0 bytes, 0 allocs
init github.com/vmware/govmomi/object @24 ms, 0.038 ms clock, 8808 bytes, 59 allocs
init github.com/vmware/govmomi/find @24 ms, 0.013 ms clock, 0 bytes, 0 allocs
init github.com/hashicorp/go-discover @24 ms, 0.016 ms clock, 2192 bytes, 12 allocs
init github.com/imdario/mergo @24 ms, 0.013 ms clock, 80 bytes, 5 allocs
init k8s.io/client-go/tools/clientcmd/api/v1 @24 ms, 0.014 ms clock, 40 bytes, 3 allocs
init k8s.io/client-go/tools/clientcmd/api/latest @24 ms, 0.026 ms clock, 8968 bytes, 98 allocs
init encoding/csv @24 ms, 0 ms clock, 80 bytes, 5 allocs
init github.com/spf13/pflag @24 ms, 0 ms clock, 272 bytes, 2 allocs
init k8s.io/client-go/tools/clientcmd @24 ms, 0.031 ms clock, 1088 bytes, 24 allocs
init k8s.io/client-go/plugin/pkg/client/auth/azure @24 ms, 0.014 ms clock, 288 bytes, 4 allocs
init k8s.io/client-go/third_party/forked/golang/template @24 ms, 0.023 ms clock, 4624 bytes, 11 allocs
init k8s.io/client-go/util/jsonpath @24 ms, 0.031 ms clock, 13944 bytes, 145 allocs
init k8s.io/client-go/plugin/pkg/client/auth/gcp @24 ms, 0.013 ms clock, 16 bytes, 1 allocs
init k8s.io/client-go/plugin/pkg/client/auth/oidc @24 ms, 0.013 ms clock, 96 bytes, 3 allocs
init k8s.io/client-go/plugin/pkg/client/auth/openstack @24 ms, 0 ms clock, 16 bytes, 1 allocs
init github.com/hashicorp/consul/agent/auto-config @24 ms, 0.014 ms clock, 16 bytes, 1 allocs
init github.com/hashicorp/consul/agent/proxycfg @24 ms, 0 ms clock, 32 bytes, 2 allocs
init github.com/hashicorp/consul/agent/systemd @24 ms, 0 ms clock, 16 bytes, 1 allocs
init github.com/golang/protobuf/protoc-gen-go/descriptor @24 ms, 0.042 ms clock, 4512 bytes, 26 allocs
init net/mail @24 ms, 0 ms clock, 16 bytes, 1 allocs
init github.com/cncf/udpa/go/udpa/annotations @24 ms, 0.080 ms clock, 62672 bytes, 623 allocs
init github.com/envoyproxy/go-control-plane/envoy/annotations @25 ms, 0.025 ms clock, 30992 bytes, 308 allocs
init google.golang.org/genproto/googleapis/api/annotations @25 ms, 0.011 ms clock, 4640 bytes, 12 allocs
init github.com/envoyproxy/protoc-gen-validate/validate @25 ms, 0.019 ms clock, 1312 bytes, 6 allocs
init github.com/golang/protobuf/ptypes/wrappers @25 ms, 0.015 ms clock, 864 bytes, 3 allocs
init github.com/envoyproxy/go-control-plane/envoy/type @25 ms, 0.32 ms clock, 116112 bytes, 1090 allocs
init github.com/golang/protobuf/ptypes/empty @25 ms, 0.014 ms clock, 0 bytes, 0 allocs
init github.com/envoyproxy/go-control-plane/envoy/type/matcher @25 ms, 0.48 ms clock, 163280 bytes, 1232 allocs
init github.com/envoyproxy/go-control-plane/envoy/api/v2/core @25 ms, 0.45 ms clock, 184840 bytes, 1805 allocs
init github.com/envoyproxy/go-control-plane/envoy/api/v2/auth @26 ms, 0.047 ms clock, 18320 bytes, 163 allocs
init github.com/envoyproxy/go-control-plane/envoy/api/v2/cluster @26 ms, 0.053 ms clock, 46240 bytes, 459 allocs
init github.com/envoyproxy/go-control-plane/envoy/api/v2/endpoint @26 ms, 0.068 ms clock, 46256 bytes, 459 allocs
init github.com/envoyproxy/go-control-plane/envoy/api/v2/listener @26 ms, 0.071 ms clock, 62320 bytes, 617 allocs
init github.com/envoyproxy/go-control-plane/envoy/type/metadata/v2 @26 ms, 0.037 ms clock, 15408 bytes, 153 allocs
init github.com/envoyproxy/go-control-plane/envoy/type/tracing/v2 @26 ms, 0.017 ms clock, 18280 bytes, 198 allocs
init github.com/envoyproxy/go-control-plane/envoy/api/v2/route @26 ms, 0.10 ms clock, 64384 bytes, 853 allocs
init github.com/envoyproxy/go-control-plane/envoy/config/filter/accesslog/v2 @26 ms, 0.059 ms clock, 18288 bytes, 164 allocs
init github.com/envoyproxy/go-control-plane/envoy/config/listener/v2 @27 ms, 0.027 ms clock, 15408 bytes, 153 allocs
init github.com/envoyproxy/go-control-plane/envoy/api/v2 @27 ms, 0.21 ms clock, 184056 bytes, 1857 allocs
init github.com/envoyproxy/go-control-plane/envoy/config/filter/network/ext_authz/v2 @27 ms, 0.029 ms clock, 56368 bytes, 154 allocs
init github.com/census-instrumentation/opencensus-proto/gen-go/resource/v1 @27 ms, 0.001 ms clock, 0 bytes, 0 allocs
init github.com/census-instrumentation/opencensus-proto/gen-go/trace/v1 @27 ms, 0.052 ms clock, 44112 bytes, 19 allocs
init github.com/envoyproxy/go-control-plane/envoy/config/trace/v2 @27 ms, 0.031 ms clock, 16768 bytes, 165 allocs
init github.com/envoyproxy/go-control-plane/envoy/config/filter/network/http_connection_manager/v2 @27 ms, 0.062 ms clock, 21320 bytes, 171 allocs
init github.com/envoyproxy/go-control-plane/envoy/config/filter/network/tcp_proxy/v2 @27 ms, 0.039 ms clock, 15424 bytes, 153 allocs
init github.com/envoyproxy/go-control-plane/envoy/service/auth/v2 @27 ms, 0.037 ms clock, 30832 bytes, 306 allocs
init github.com/envoyproxy/go-control-plane/envoy/service/auth/v2alpha @27 ms, 0.022 ms clock, 15408 bytes, 153 allocs
init github.com/envoyproxy/go-control-plane/envoy/service/discovery/v2 @27 ms, 0.057 ms clock, 62112 bytes, 616 allocs
init github.com/hashicorp/consul/agent/xds @27 ms, 0.043 ms clock, 62840 bytes, 210 allocs
init github.com/hashicorp/consul/api/watch @27 ms, 0.005 ms clock, 672 bytes, 3 allocs
init github.com/shirou/gopsutil/internal/common @27 ms, 0.012 ms clock, 32 bytes, 2 allocs
init github.com/shirou/gopsutil/cpu @27 ms, 1.9 ms clock, 5256 bytes, 50 allocs
init github.com/shirou/gopsutil/net @29 ms, 0.049 ms clock, 4984 bytes, 65 allocs
init github.com/shirou/gopsutil/process @29 ms, 0.004 ms clock, 32 bytes, 2 allocs
init github.com/prometheus/client_golang/prometheus/promhttp @29 ms, 0.013 ms clock, 304 bytes, 2 allocs
init github.com/elazarl/go-bindata-assetfs @29 ms, 0.013 ms clock, 0 bytes, 0 allocs
init internal/profile @29 ms, 0.16 ms clock, 98880 bytes, 756 allocs
init net/http/pprof @30 ms, 0.018 ms clock, 864 bytes, 5 allocs
init github.com/NYTimes/gziphandler @30 ms, 0.001 ms clock, 640 bytes, 20 allocs
init golang.org/x/net/context @30 ms, 0 ms clock, 0 bytes, 0 allocs
init github.com/hashicorp/consul/sdk/testutil @30 ms, 0.015 ms clock, 232 bytes, 2 allocs
init github.com/hashicorp/consul/agent @30 ms, 1.0 ms clock, 104616 bytes, 773 allocs
init github.com/hashicorp/consul/command/flags @31 ms, 0 ms clock, 96 bytes, 2 allocs
init github.com/posener/complete @31 ms, 0.003 ms clock, 96 bytes, 2 allocs
init main @31 ms, 0 ms clock, 256 bytes, 2 allocs
issue 42738

@shoenig
Copy link
Contributor Author

shoenig commented Nov 23, 2020

In the course of whittling this down I ran into this panic, seems like it might just be another side affect of memory corruption?

runtime: newstack sp=0x16dd4edb0 stack=[0x1409018b000, 0x1409018b800]
	morebuf={pc:0x102319b38 sp:0x16dd4edb0 lr:0x0}
	sched={pc:0x1022e9e5c sp:0x16dcc2df8 lr:fatal error: fatal error: unexpected signal during runtime execution
fatal error: unexpected signal during runtime execution
panic during panic
[signal SIGSEGV: segmentation violation code=0x2 addr=0x100000004 pc=0x100000004]

runtime stack:
runtime: unexpected return pc for runtime.sigpanic called from 0x100000004
stack: frame={sp:0x16dcc2ce0, fp:0x16dcc2d20} stack=[0x16dc43338,0x16dcc2f38)
000000016dcc2be0:  0000000000000004  000000016dcc2c18 
000000016dcc2bf0:  000000000000001f  0000000100000004 
000000016dcc2c00:  0000000100000004  0000000000000002 
000000016dcc2c10:  00000001039f7231  000000016dcc2c68 
000000016dcc2c20:  0000000102313570 <runtime.fatalthrow+64>  0000014000001200 
000000016dcc2c30:  00000001023133d4 <runtime.throw+84>  000000016dcc2cb0 
000000016dcc2c40:  0000000103cd4300  0000000000000001 
000000016dcc2c50:  000000016dcc2cb0  00000001023133d4 <runtime.throw+84> 
000000016dcc2c60:  0000014000001200  000000016dcc2ca8 
000000016dcc2c70:  00000001023133d4 <runtime.throw+84>  000000016dcc2c88 
000000016dcc2c80:  00000001023133bc <runtime.throw+60>  0000000102341e40 <runtime.fatalthrow.func1+0> 
000000016dcc2c90:  0000014000001200  00000001023133d4 <runtime.throw+84> 
000000016dcc2ca0:  000000016dcc2cb0  000000016dcc2cd8 
000000016dcc2cb0:  000000010232ac2c <runtime.sigpanic+668>  000000016dcc2cc0 
000000016dcc2cc0:  0000000102341dc0 <runtime.throw.func1+0>  0000000103a205ea 
000000016dcc2cd0:  000000000000002a  000000016dcc2d28 
000000016dcc2ce0: <0000000100000004  0000000103a205ea 
000000016dcc2cf0:  000000000000002a  000000016dcc2d28 
000000016dcc2d00:  0000000100000004  000000010234a930 <runtime.write_trampoline+0> 
000000016dcc2d10:  0000000000000000  000000000000000d 
000000016dcc2d20: >0000000100000004  000000016dcc2d68 
000000016dcc2d30:  0000000102314b08 <runtime.gwrite+136>  000000010234a930 <runtime.write_trampoline+0> 
000000016dcc2d40:  000000016dcc2d78  000000000000000d 
000000016dcc2d50:  00000001039a4e3f  0000000103edcc00 
000000016dcc2d60:  0000000104519f10  000000016dcc2da8 
000000016dcc2d70:  0000000102315310 <runtime.printstring+96>  0000000000000002 
000000016dcc2d80:  00000001039b55d9  000000000000000d 
000000016dcc2d90:  0000000100000000  000000016dcc2dc8 
000000016dcc2da0:  00000140600a0358  000000016dcc2df8 
000000016dcc2db0:  0000000102341e08 <runtime.throw.func1+72>  00000001039b55d9 
000000016dcc2dc0:  000000000000000d  000000000000000d 
000000016dcc2dd0:  00000001039b55d9  000000000000000d 
000000016dcc2de0:  00000001039b55d9  000000000000000d 
000000016dcc2df0:  000000000000000d  000000016dcc2e28 
000000016dcc2e00:  00000001023133bc <runtime.throw+60>  00000001039b55d9 
000000016dcc2e10:  000000000000000d  0000000000000017 
runtime.throw(0x103a205ea, 0x2a)
	/opt/go/src/runtime/panic.go:1112 +0x54
runtime: unexpected return pc for runtime.sigpanic called from 0x100000004
stack: frame={sp:0x16dcc2ce0, fp:0x16dcc2d20} stack=[0x16dc43338,0x16dcc2f38)
000000016dcc2be0:  0000000000000004  000000016dcc2c18 
000000016dcc2bf0:  000000000000001f  0000000100000004 
000000016dcc2c00:  0000000100000004  0000000000000002 
000000016dcc2c10:  00000001039f7231  000000016dcc2c68 
000000016dcc2c20:  0000000102313570 <runtime.fatalthrow+64>  0000014000001200 
000000016dcc2c30:  00000001023133d4 <runtime.throw+84>  000000016dcc2cb0 
000000016dcc2c40:  0000000103cd4300  0000000000000001 
000000016dcc2c50:  000000016dcc2cb0  00000001023133d4 <runtime.throw+84> 
000000016dcc2c60:  0000014000001200  000000016dcc2ca8 
000000016dcc2c70:  00000001023133d4 <runtime.throw+84>  000000016dcc2c88 
000000016dcc2c80:  00000001023133bc <runtime.throw+60>  0000000102341e40 <runtime.fatalthrow.func1+0> 
000000016dcc2c90:  0000014000001200  00000001023133d4 <runtime.throw+84> 
000000016dcc2ca0:  000000016dcc2cb0  000000016dcc2cd8 
000000016dcc2cb0:  000000010232ac2c <runtime.sigpanic+668>  000000016dcc2cc0 
000000016dcc2cc0:  0000000102341dc0 <runtime.throw.func1+0>  0000000103a205ea 
000000016dcc2cd0:  000000000000002a  000000016dcc2d28 
000000016dcc2ce0: <0000000100000004  0000000103a205ea 
000000016dcc2cf0:  000000000000002a  000000016dcc2d28 
000000016dcc2d00:  0000000100000004  000000010234a930 <runtime.write_trampoline+0> 
000000016dcc2d10:  0000000000000000  000000000000000d 
000000016dcc2d20: >0000000100000004  000000016dcc2d68 
000000016dcc2d30:  0000000102314b08 <runtime.gwrite+136>  000000010234a930 <runtime.write_trampoline+0> 
000000016dcc2d40:  000000016dcc2d78  000000000000000d 
000000016dcc2d50:  00000001039a4e3f  0000000103edcc00 
000000016dcc2d60:  0000000104519f10  000000016dcc2da8 
000000016dcc2d70:  0000000102315310 <runtime.printstring+96>  0000000000000002 
000000016dcc2d80:  00000001039b55d9  000000000000000d 
000000016dcc2d90:  0000000100000000  000000016dcc2dc8 
000000016dcc2da0:  00000140600a0358  000000016dcc2df8 
000000016dcc2db0:  0000000102341e08 <runtime.throw.func1+72>  00000001039b55d9 
000000016dcc2dc0:  000000000000000d  000000000000000d 
000000016dcc2dd0:  00000001039b55d9  000000000000000d 
000000016dcc2de0:  00000001039b55d9  000000000000000d 
000000016dcc2df0:  000000000000000d  000000016dcc2e28 
000000016dcc2e00:  00000001023133bc <runtime.throw+60>  00000001039b55d9 
000000016dcc2e10:  000000000000000d  0000000000000017 
runtime.sigpanic()
	/opt/go/src/runtime/signal_unix.go:714 +0x29c

goroutine 1 [runnable, locked to thread]:
text/template/parse.(*lexer).nextItem(...)
	/opt/go/src/text/template/parse/lex.go:195
text/template/parse.(*Tree).peek(...)
	/opt/go/src/text/template/parse/parse.go:105
text/template/parse.(*Tree).parse(0x1400000f440)
	/opt/go/src/text/template/parse/parse.go:295 +0x9b4
text/template/parse.(*Tree).Parse(0x1400000f440, 0x103a93cee, 0x172, 0x0, 0x0, 0x0, 0x0, 0x140000282a0, 0x14000051f60, 0x2, ...)
	/opt/go/src/text/template/parse/parse.go:246 +0x1a0
text/template/parse.Parse(0x1039ac80c, 0x9, 0x103a93cee, 0x172, 0x0, 0x0, 0x0, 0x0, 0x14000051f60, 0x2, ...)
	/opt/go/src/text/template/parse/parse.go:65 +0xd0
text/template.(*Template).Parse(0x1400005f700, 0x103a93cee, 0x172, 0x14000028090, 0x140000280c0, 0x140000280f0)
	/opt/go/src/text/template/template.go:201 +0x77c
html/template.(*Template).Parse(0x14000028240, 0x103a93cee, 0x172, 0x0, 0x0, 0x0)
	/opt/go/src/html/template/template.go:191 +0x6c
net/rpc.init()
	/opt/go/src/net/rpc/debug.go:39 +0xac

goroutine 8 [chan send]:
text/template/parse.(*lexer).emit(...)
	/opt/go/src/text/template/parse/lex.go:157
text/template/parse.lexLeftDelim(0x1409010a080, 0x10451a3c8)
	/opt/go/src/text/template/parse/lex.go:307 +0x1ac
text/template/parse.(*lexer).run(0x1409010a080)
	/opt/go/src/text/template/parse/lex.go:230 +0x3c
created by text/template/parse.lex
	/opt/go/src/text/template/parse/lex.go:223 +0x124

@dmitshur
Copy link
Contributor

dmitshur commented Dec 8, 2020

This issue doesn’t have a milestone yet. I don’t know what it should be set to, but I’ll try Go1.16 optimistically, since it would be good if it is possible to resolve it by then and allow affected Go programs to run.

@dmitshur dmitshur added this to the Go1.16 milestone Dec 8, 2020
@cherrymui
Copy link
Member

runtime.mallocgc(0x17fffff7394083e0, 0x101201800, 0x16fc63801, 0x1001f2ec4)
runtime.mallocgc(0x97b93923f94023e3, 0x103c0d340, 0x16d40f701, 0x102a448d4)

Those allocation sizes are enormous, which doesn't make sense. In fact, those hex looks like instruction bytes (e.g. 97b93923f94023e3 is bl 0xfffffffffee4e48c; ldr x3, [sp, #64]). Maybe the type descriptor somehow points to the program text? I'll take a careful look.

@cherrymui
Copy link
Member

I think I understand it now. In runtime.malg we take the address of the type descriptor of the g struct (in order to allocate a g). As we combine all type descriptors into a single symbol typerel.*, we generate a relocation that targets typerel.* + offset. This binary is quite large and have a lot of types, so the offset is also quite large (0x80a45f in my case). On Mach-O ARM64, the relocation offset is a signed 24-bit value, and our offset overflows.

Not sure what the best solution is. Maybe we should not create such big symbols when combining type symbols (and other "grouped" symbols). That would need a non-trivial amount of work, though.

@cherrymui cherrymui changed the title runtime: crash on allocation of extremely large block (darwin/arm64) cmd/link: relocation addend overflows on darwin/arm64 Dec 9, 2020
@gopherbot
Copy link

Change https://golang.org/cl/276694 mentions this issue: cmd/link: reject too-large relocation addend on darwin/arm64

gopherbot pushed a commit that referenced this issue Dec 10, 2020
Mach-O relocation addend is signed 24-bit. If the addend
overflows, it is better to fail the build than emitting an
incorrect binary. (I'm still working on a fix.)

Updates #42738.

Change-Id: I647f0cd4f6b84d9ac75ef3bf36673bea01dfc211
Reviewed-on: https://go-review.googlesource.com/c/go/+/276694
Trust: Cherry Zhang <cherryyz@google.com>
Run-TryBot: Cherry Zhang <cherryyz@google.com>
TryBot-Result: Go Bot <gobot@golang.org>
Reviewed-by: Than McIntosh <thanm@google.com>
@gopherbot
Copy link

Change https://golang.org/cl/278332 mentions this issue: cmd/link: handle large relocation addend on darwin/arm64

@cherrymui
Copy link
Member

CL https://golang.org/cl/278332 should fix this. Could you give it a try? Thanks.

@shoenig
Copy link
Contributor Author

shoenig commented Dec 15, 2020

@cherrymui looks like that CL did the trick!

% go version 
go version devel +c4f497da6f Mon Dec 14 20:11:22 2020 -0500 darwin/arm64

% consul version 
Consul v1.9.0-dev
Protocol 2 spoken by default, understands 2 to 3 (agent will automatically use protocol >2 when speaking to compatible agents)

% consul agent -dev
==> Starting Consul agent...

@cherrymui
Copy link
Member

Thanks for confirming!

@golang golang locked and limited conversation to collaborators Dec 16, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
arch-arm64 FrozenDueToAge NeedsInvestigation Someone must examine and confirm this is a valid issue and not a duplicate of an existing one. OS-Darwin
Projects
None yet
Development

No branches or pull requests

6 participants
@shoenig @dmitshur @ianlancetaylor @gopherbot @cherrymui and others