diff options
author | Cherry Mui <cherryyz@google.com> | 2022-02-11 14:58:56 +0000 |
---|---|---|
committer | Cherry Mui <cherryyz@google.com> | 2022-02-11 14:58:56 +0000 |
commit | e90b835f3071f1eb71810a3631b792f23df59f24 (patch) | |
tree | dc5a1c1620f14dbc051402095af9c024bc12a202 /src/cmd/link/internal/ld/lib.go | |
parent | bb93480d009322886df6f5185c988d6d21fdc2c8 (diff) | |
parent | 0a6cf8706fdd0fe1bd26e4d1ecbcd41650bf5e6c (diff) | |
download | go-e90b835f3071f1eb71810a3631b792f23df59f24.tar.gz go-e90b835f3071f1eb71810a3631b792f23df59f24.zip |
[dev.boringcrypto.go1.16] all: merge go1.16.14 into dev.boringcrypto.go1.16
Change-Id: I186a567b3e76df7ecf1842634a3851eab7c9dfce
Diffstat (limited to 'src/cmd/link/internal/ld/lib.go')
-rw-r--r-- | src/cmd/link/internal/ld/lib.go | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/cmd/link/internal/ld/lib.go b/src/cmd/link/internal/ld/lib.go index f7a32aebae..81efc8f4a0 100644 --- a/src/cmd/link/internal/ld/lib.go +++ b/src/cmd/link/internal/ld/lib.go @@ -1270,7 +1270,10 @@ func (ctxt *Link) hostlink() { if ctxt.DynlinkingGo() && objabi.GOOS != "ios" { // -flat_namespace is deprecated on iOS. // It is useful for supporting plugins. We don't support plugins on iOS. - argv = append(argv, "-Wl,-flat_namespace") + // -flat_namespace may cause the dynamic linker to hang at forkExec when + // resolving a lazy binding. See issue 38824. + // Force eager resolution to work around. + argv = append(argv, "-Wl,-flat_namespace", "-Wl,-bind_at_load") } if !combineDwarf { argv = append(argv, "-Wl,-S") // suppress STAB (symbolic debugging) symbols |