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

sync/atomic: untyped args #8753

Closed
bradfitz opened this issue Sep 16, 2014 · 3 comments
Closed

sync/atomic: untyped args #8753

bradfitz opened this issue Sep 16, 2014 · 3 comments
Milestone

Comments

@bradfitz
Copy link
Contributor

Few builders are broken with:

runtime: frame sync/atomic.StoreUint32 untyped args 0xc2081a4370+0xc
fatal error: missing stackmap

runtime stack:
runtime.throw(0x72e1c0)
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/panic.go:419 +0xad fp=0xc20808dbe8 sp=0xc20808dbb8
scanframe(0xc20808dc80, 0x0, 0x1)
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/mgc0.c:667 +0x308 fp=0xc20808dc58 sp=0xc20808dbe8
runtime.tracebackdefers(0xc2080d3e60, 0xc20808dd30, 0x0)
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/traceback.go:73 +0xab fp=0xc20808dcd8 sp=0xc20808dc58
scanstack(0xc2080d3e60)
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/mgc0.c:715 +0x239 fp=0xc20808dd48 sp=0xc20808dcd8
markroot(0xc20800e000, 0x209)
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/mgc0.c:490 +0xe7 fp=0xc20808dda8 sp=0xc20808dd48
runtime.parfordo(0xc20800e000)
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/parfor.c:91 +0x13b fp=0xc20808de28 sp=0xc20808dda8
runtime.gchelper()
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/mgc0.c:1121 +0x4a fp=0xc20808de50 sp=0xc20808de28
stopm()
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/proc.c:1203 +0x158 fp=0xc20808de70 sp=0xc20808de50
gcstopm()
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/proc.c:1373 +0xed fp=0xc20808de98 sp=0xc20808de70
findrunnable(0xc208012000)
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/proc.c:1410 +0x2e fp=0xc20808ded0 sp=0xc20808de98
schedule()
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/proc.c:1597 +0x151 fp=0xc20808df00 sp=0xc20808ded0
runtime.gosched_m(0xc20809cc60)
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/proc.c:1696 +0xac fp=0xc20808df20 sp=0xc20808df00
runtime.newstack()
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/stack.c:741 +0x4d7 fp=0xc20808dfd0 sp=0xc20808df20
runtime.morestack()
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/asm_amd64.s:324 +0x7e fp=0xc20808dfd8 sp=0xc20808dfd0

goroutine 1 [chan receive]:
runtime.gopark(0x434260, 0xc208744958, 0x61e230, 0xc)
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/proc.go:131 +0x10f fp=0xc20801bc18 sp=0xc20801bbd8
runtime.goparkunlock(0xc208744958, 0x61e230, 0xc)
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/proc.go:136 +0x48 fp=0xc20801bc40 sp=0xc20801bc18
runtime.chanrecv(0x5791c0, 0xc208744900, 0xc20801be20, 0x455201, 0x0)
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/chan.go:405 +0x440 fp=0xc20801bcd8 sp=0xc20801bc40
runtime.chanrecv1(0x5791c0, 0xc208744900, 0xc20801be20)
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/chan.go:307 +0x2b fp=0xc20801bd08 sp=0xc20801bcd8
testing.RunTests(0x677690, 0x72e780, 0x75, 0x75, 0x581c01)
    /usr/local/go/src/testing/testing.go:510 +0xac6 fp=0xc20801beb8 sp=0xc20801bd08
testing.Main(0x677690, 0x72e780, 0x75, 0x75, 0x72fde0, 0xc5, 0xc5, 0x738de0, 0x0, 0x0)
    /usr/local/go/src/testing/testing.go:440 +0x82 fp=0xc20801bf40 sp=0xc20801beb8
main.main()
    runtime/_test/_testmain.go:673 +0x96 fp=0xc20801bf98 sp=0xc20801bf40
runtime.main()
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/proc.go:63 +0xf3 fp=0xc20801bfe0 sp=0xc20801bf98
runtime.goexit()
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/proc.c:1705 fp=0xc20801bfe8 sp=0xc20801bfe0

goroutine 2 [force gc (idle)]:
runtime.gopark(0x434260, 0x731940, 0x61f510, 0xf)
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/proc.go:131 +0x10f fp=0xc208017f98 sp=0xc208017f58
runtime.goparkunlock(0x731940, 0x61f510, 0xf)
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/proc.go:136 +0x48 fp=0xc208017fc0 sp=0xc208017f98
runtime.forcegchelper()
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/proc.go:99 +0xce fp=0xc208017fe0 sp=0xc208017fc0
runtime.goexit()
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/proc.c:1705 fp=0xc208017fe8 sp=0xc208017fe0
created by runtime.init·4
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/proc.go:87 +0x25

goroutine 3 [GC sweep wait]:
runtime.gopark(0x434260, 0x731298, 0x6199d0, 0xd)
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/proc.go:131 +0x10f fp=0xc208019f98 sp=0xc208019f58
runtime.goparkunlock(0x731298, 0x6199d0, 0xd)
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/proc.go:136 +0x48 fp=0xc208019fc0 sp=0xc208019f98
runtime.bgsweep()
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/mgc0.go:82 +0xbc fp=0xc208019fe0 sp=0xc208019fc0
runtime.goexit()
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/proc.c:1705 fp=0xc208019fe8 sp=0xc208019fe0
created by gc
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/mgc0.c:1310

goroutine 4 [finalizer wait]:
runtime.gopark(0x434260, 0x731288, 0x61ef70, 0xe)
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/proc.go:131 +0x10f fp=0xc20803bf30 sp=0xc20803bef0
runtime.goparkunlock(0x731288, 0x61ef70, 0xe)
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/proc.go:136 +0x48 fp=0xc20803bf58 sp=0xc20803bf30
runtime.runfinq()
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/malloc.go:711 +0xba fp=0xc20803bfe0 sp=0xc20803bf58
runtime.goexit()
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/proc.c:1705 fp=0xc20803bfe8 sp=0xc20803bfe0
created by runtime.createfing
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/malloc.go:691 +0x5e

goroutine 5 [syscall]:
runtime.notetsleepg(0x731c98, 0x9378835b, 0x0)
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/lock_futex.go:202 +0x52 fp=0xc208039f60 sp=0xc208039f38
runtime.timerproc()
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/time.go:207 +0x120 fp=0xc208039fe0 sp=0xc208039f60
runtime.goexit()
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/proc.c:1705 fp=0xc208039fe8 sp=0xc208039fe0
created by runtime.addtimerLocked
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/time.go:113 +0x1ba

goroutine 538 [syscall]:
runtime_test.func·042(0x0, 0x1dcd65174876e800, 0x630170, 0x13, 0xc20803e0c0)
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/futex_test.go:47 +0x4d fp=0xc20819dfb8 sp=0xc20819df68
runtime.goexit()
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/proc.c:1705 fp=0xc20819dfc0 sp=0xc20819dfb8
created by runtime_test.TestFutexsleep
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/futex_test.go:51 +0x219

goroutine 537 [syscall]:
runtime_test.func·042(0x0, 0x4e94914f0000, 0x6305b0, 0x14, 0xc20803e060)
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/futex_test.go:47 +0x4d fp=0xc20817bfb8 sp=0xc20817bf68
runtime.goexit()
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/proc.c:1705 fp=0xc20817bfc0 sp=0xc20817bfb8
created by runtime_test.TestFutexsleep
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/futex_test.go:51 +0x219

goroutine 80698 [runnable]:
runtime_test.func·100()
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/runtime_unix_test.go:33 fp=0xc208367fe0 sp=0xc208367fd8
runtime.goexit()
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/proc.c:1705 fp=0xc208367fe8 sp=0xc208367fe0
created by runtime_test.TestGoroutineProfile
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/runtime_unix_test.go:38 +0x17d

goroutine 80696 [runnable]:
runtime_test.func·100()
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/runtime_unix_test.go:33 fp=0xc208523fe0 sp=0xc208523fd8
runtime.goexit()
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/proc.c:1705 fp=0xc208523fe8 sp=0xc208523fe0
created by runtime_test.TestGoroutineProfile
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/runtime_unix_test.go:38 +0x17d

goroutine 80695 [runnable]:
runtime.GoroutineProfile(0xc20880db50, 0x64, 0x64, 0xc, 0x1)
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/mprof.go:528 fp=0xc20880db08 sp=0xc20880db00
runtime_test.TestGoroutineProfile(0xc208061440)
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/runtime_unix_test.go:47 +0x23e fp=0xc208813f88 sp=0xc20880db08
testing.tRunner(0xc208061440, 0x72f0e0)
    /usr/local/go/src/testing/testing.go:427 +0xc0 fp=0xc208813fd0 sp=0xc208813f88
runtime.goexit()
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/proc.c:1705 fp=0xc208813fd8 sp=0xc208813fd0
created by testing.RunTests
    /usr/local/go/src/testing/testing.go:509 +0xa7b

goroutine 80699 [garbage collection]:
runtime.switchtoM()
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/asm_amd64.s:198 fp=0xc20862be10 sp=0xc20862be08
runtime.gogc(0x800000000)
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/malloc.go:469 +0x1cf fp=0xc20862be48 sp=0xc20862be10
runtime.mallocgc(0x10, 0x5df9a0, 0x1, 0x431ca0)
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/malloc.go:341 +0x38f fp=0xc20862bef8 sp=0xc20862be48
runtime.newobject(0x5df9a0, 0x80072b538)
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/malloc.go:353 +0x4b fp=0xc20862bf20 sp=0xc20862bef8
runtime.convT2I(0x5df9a0, 0x5baf40, 0x7390a0, 0xc20862bfa0, 0x0, 0x0)
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/iface.go:163 +0x130 fp=0xc20862bf68 sp=0xc20862bf20
syscall.Close(0xffffffffffffffff, 0x0, 0x0)
    /usr/local/go/src/syscall/zsyscall_freebsd_amd64.go:384 +0x97 fp=0xc20862bfb0 sp=0xc20862bf68
runtime_test.func·100()
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/runtime_unix_test.go:35 +0x50 fp=0xc20862bfe0 sp=0xc20862bfb0
runtime.goexit()
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/proc.c:1705 fp=0xc20862bfe8 sp=0xc20862bfe0
created by runtime_test.TestGoroutineProfile
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/runtime_unix_test.go:38 +0x17d

goroutine 80697 [runnable]:
runtime.gogc(0x800000000)
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/malloc.go:413 fp=0xc20864de48 sp=0xc20864de40
runtime.mallocgc(0x10, 0x5df9a0, 0x1, 0x431ca0)
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/malloc.go:341 +0x38f fp=0xc20864def8 sp=0xc20864de48
runtime.newobject(0x5df9a0, 0x80072b538)
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/malloc.go:353 +0x4b fp=0xc20864df20 sp=0xc20864def8
runtime.convT2I(0x5df9a0, 0x5baf40, 0x7390a0, 0xc20864dfa0, 0x0, 0x0)
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/iface.go:163 +0x130 fp=0xc20864df68 sp=0xc20864df20
syscall.Close(0xffffffffffffffff, 0x0, 0x0)
    /usr/local/go/src/syscall/zsyscall_freebsd_amd64.go:384 +0x97 fp=0xc20864dfb0 sp=0xc20864df68
runtime_test.func·100()
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/runtime_unix_test.go:35 +0x50 fp=0xc20864dfe0 sp=0xc20864dfb0
runtime.goexit()
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/proc.c:1705 fp=0xc20864dfe8 sp=0xc20864dfe0
created by runtime_test.TestGoroutineProfile
    /tmp/gobuilder/freebsd-amd64-91f53e24babd/go/src/runtime/runtime_unix_test.go:38 +0x17d
FAIL    runtime 26.333s
?       runtime/cgo [no test files]
@rsc
Copy link
Contributor

rsc commented Sep 16, 2014

Comment 1:

CL 142150043 fixes these and others.

@gopherbot
Copy link

Comment 2:

CL https://golang.org/cl/142150043 mentions this issue.

@rsc
Copy link
Contributor

rsc commented Sep 16, 2014

Comment 3:

This issue was closed by revision 653fb6d.

Status changed to Fixed.

@rsc rsc added this to the Go1.4 milestone Apr 14, 2015
@rsc rsc removed the release-go1.4 label Apr 14, 2015
@golang golang locked and limited conversation to collaborators Jun 25, 2016
wheatman pushed a commit to wheatman/go-akaros that referenced this issue Jun 25, 2018
If there is a leading ·, assume there is a Go prototype and
attach the Go prototype information to the function.
If the function is not called from Go and does not need a
Go prototype, it can be made file-local instead (using name<>(SB)).

This fixes the current BSD build failures, by giving functions like
sync/atomic.StoreUint32 argument stack map information.

Fixes golang#8753.

LGTM=khr, iant
R=golang-codereviews, iant, khr, bradfitz
CC=golang-codereviews, r, rlh
https://golang.org/cl/142150043
wheatman pushed a commit to wheatman/go-akaros that referenced this issue Jul 9, 2018
If there is a leading ·, assume there is a Go prototype and
attach the Go prototype information to the function.
If the function is not called from Go and does not need a
Go prototype, it can be made file-local instead (using name<>(SB)).

This fixes the current BSD build failures, by giving functions like
sync/atomic.StoreUint32 argument stack map information.

Fixes golang#8753.

LGTM=khr, iant
R=golang-codereviews, iant, khr, bradfitz
CC=golang-codereviews, r, rlh
https://golang.org/cl/142150043
wheatman pushed a commit to wheatman/go-akaros that referenced this issue Jul 30, 2018
If there is a leading ·, assume there is a Go prototype and
attach the Go prototype information to the function.
If the function is not called from Go and does not need a
Go prototype, it can be made file-local instead (using name<>(SB)).

This fixes the current BSD build failures, by giving functions like
sync/atomic.StoreUint32 argument stack map information.

Fixes golang#8753.

LGTM=khr, iant
R=golang-codereviews, iant, khr, bradfitz
CC=golang-codereviews, r, rlh
https://golang.org/cl/142150043
@rsc rsc removed their assignment Jun 23, 2022
This issue was closed.
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

3 participants