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

runtime/trace: TestTraceStress fails on windows-gce-386 builder #11776

Closed
alexbrainman opened this issue Jul 18, 2015 · 4 comments
Closed

runtime/trace: TestTraceStress fails on windows-gce-386 builder #11776

alexbrainman opened this issue Jul 18, 2015 · 4 comments
Milestone

Comments

@alexbrainman
Copy link
Member

From http://build.golang.org/log/899c6633711127e792f3ac75b10011d554736dd5:

ok      runtime/debug   0.052s
fatal error: runtime: cannot map pages in arena address space

runtime stack:
runtime.throw(0x60c940, 0x30)
    C:/workdir/go/src/runtime/panic.go:527 +0x85
runtime.sysMap(0x42b10000, 0x100000, 0x329dfe01, 0x6dd7f8)
    C:/workdir/go/src/runtime/mem_windows.go:112 +0x78
runtime.mHeap_SysAlloc(0x6cb000, 0x100000, 0x329dfeb0)
    C:/workdir/go/src/runtime/malloc.go:423 +0x121
runtime.mHeap_Grow(0x6cb000, 0x80, 0x0)
    C:/workdir/go/src/runtime/mheap.go:625 +0x52
runtime.mHeap_AllocSpanLocked(0x6cb000, 0x80, 0x126eedd0)
    C:/workdir/go/src/runtime/mheap.go:529 +0x574
runtime.mHeap_Alloc_m(0x6cb000, 0x80, 0x0, 0x41b401, 0x4a)
    C:/workdir/go/src/runtime/mheap.go:422 +0x174
runtime.mHeap_Alloc.func1()
    C:/workdir/go/src/runtime/mheap.go:481 +0x3d
runtime.systemstack(0x329dff14)
    C:/workdir/go/src/runtime/asm_386.s:283 +0x87
runtime.mHeap_Alloc(0x6cb000, 0x80, 0x0, 0x32790101, 0x60ac0e94)
    C:/workdir/go/src/runtime/mheap.go:482 +0x5a
runtime.largeAlloc(0x100000, 0x1, 0x12290928)
    C:/workdir/go/src/runtime/malloc.go:727 +0x87
runtime.mallocgc.func3()
    C:/workdir/go/src/runtime/malloc.go:634 +0x30
runtime.systemstack(0x122f0000)
    C:/workdir/go/src/runtime/asm_386.s:267 +0x5a
runtime.mstart()
    C:/workdir/go/src/runtime/proc1.go:668

goroutine 67 [running]:
runtime.systemstack_switch()
    C:/workdir/go/src/runtime/asm_386.s:222 fp=0x149a0e20 sp=0x149a0e1c
runtime.mallocgc(0x100000, 0x578220, 0x1, 0x42a0a000)
    C:/workdir/go/src/runtime/malloc.go:635 +0x73b fp=0x149a0e88 sp=0x149a0e20
runtime.newarray(0x578220, 0x100000, 0x42a0a000)
    C:/workdir/go/src/runtime/malloc.go:759 +0xac fp=0x149a0ea8 sp=0x149a0e88
runtime.makeslice(0x572420, 0x100000, 0x0, 0x100000, 0x0, 0x0, 0x0, 0x0)
    C:/workdir/go/src/runtime/slice.go:32 +0x152 fp=0x149a0ed4 sp=0x149a0ea8
runtime/pprof_test.TestTraceStress(0x122c3f20)
    C:/workdir/go/src/runtime/pprof/trace_test.go:151 +0x3e7 fp=0x149a0fac sp=0x149a0ed4
testing.tRunner(0x122c3f20, 0x6c3aa4)
    C:/workdir/go/src/testing/testing.go:455 +0x8f fp=0x149a0fd0 sp=0x149a0fac
runtime.goexit()
    C:/workdir/go/src/runtime/asm_386.s:1662 +0x1 fp=0x149a0fd4 sp=0x149a0fd0
created by testing.RunTests
    C:/workdir/go/src/testing/testing.go:560 +0x6e9

goroutine 1 [chan receive]:
testing.RunTests(0x623180, 0x6c3a20, 0xe, 0xe, 0x100001)
    C:/workdir/go/src/testing/testing.go:561 +0x71b
testing.(*M).Run(0x126f5f84, 0x20)
    C:/workdir/go/src/testing/testing.go:493 +0x68
main.main()
    runtime/pprof/_test/_testmain.go:82 +0x100

goroutine 51 [chan send (nil chan)]:
runtime/pprof_test.TestTraceSymbolize.func2()
    C:/workdir/go/src/runtime/pprof/trace_stack_test.go:42 +0x37
created by runtime/pprof_test.TestTraceSymbolize
    C:/workdir/go/src/runtime/pprof/trace_stack_test.go:43 +0x208

goroutine 50 [select (no cases)]:
runtime/pprof_test.TestTraceSymbolize.func1()
    C:/workdir/go/src/runtime/pprof/trace_stack_test.go:38 +0x17
created by runtime/pprof_test.TestTraceSymbolize
    C:/workdir/go/src/runtime/pprof/trace_stack_test.go:39 +0x1f3

goroutine 68 [chan receive]:
runtime/pprof_test.TestTraceStress.func1(0x1231dc80, 0x122ec7f0)
    C:/workdir/go/src/runtime/pprof/trace_test.go:106 +0x31
created by runtime/pprof_test.TestTraceStress
    C:/workdir/go/src/runtime/pprof/trace_test.go:108 +0xd5

goroutine 52 [chan receive (nil chan)]:
runtime/pprof_test.TestTraceSymbolize.func3()
    C:/workdir/go/src/runtime/pprof/trace_stack_test.go:46 +0x2f
created by runtime/pprof_test.TestTraceSymbolize
    C:/workdir/go/src/runtime/pprof/trace_stack_test.go:47 +0x21d

goroutine 69 [syscall, locked to thread]:
syscall.Syscall6(0x76b13e93, 0x5, 0x190, 0x1499ffb7, 0x1, 0x1499ff20, 0x0, 0x0, 0x0, 0x40c014, ...)
    C:/workdir/go/src/runtime/syscall_windows.go:139 +0x4d
syscall.ReadFile(0x190, 0x1499ffb7, 0x1, 0x1, 0x1499ff20, 0x0, 0x0, 0x0)
    C:/workdir/go/src/syscall/zsyscall_windows.go:283 +0x9d
syscall.Read(0x190, 0x1499ffb7, 0x1, 0x1, 0x0, 0x0, 0x0)
    C:/workdir/go/src/syscall/syscall_windows.go:291 +0x61
os.(*File).read(0x1229c660, 0x1499ffb7, 0x1, 0x1, 0x0, 0x0, 0x0)
    C:/workdir/go/src/os/file_windows.go:300 +0x103
os.(*File).Read(0x1229c660, 0x1499ffb7, 0x1, 0x1, 0x0, 0x0, 0x0)
    C:/workdir/go/src/os/file.go:95 +0x6f
runtime/pprof_test.TestTraceStress.func3(0x1229c660, 0x1231dc80, 0x122ec7f0)
    C:/workdir/go/src/runtime/pprof/trace_test.go:122 +0x52
created by runtime/pprof_test.TestTraceStress
    C:/workdir/go/src/runtime/pprof/trace_test.go:125 +0x234

goroutine 41 [trace reader (blocked)]:
runtime.ReadTrace(0x0, 0x0, 0x0)
    C:/workdir/go/src/runtime/trace.go:316 +0x1bc
runtime/pprof.StartTrace.func1(0x8c07b0, 0x12326000)
    C:/workdir/go/src/runtime/pprof/pprof.go:627 +0x1a
created by runtime/pprof.StartTrace
    C:/workdir/go/src/runtime/pprof/pprof.go:633 +0x69

goroutine 42 [runnable, locked to thread]:
runtime.Gosched()
    C:/workdir/go/src/runtime/proc.go:166 +0x10
runtime/pprof_test.TestTraceStress.func4(0x1231dc80)
    C:/workdir/go/src/runtime/pprof/trace_test.go:143 +0xae
created by runtime/pprof_test.TestTraceStress
    C:/workdir/go/src/runtime/pprof/trace_test.go:146 +0x3a9
FAIL    runtime/pprof   7.445s

Alex

@mikioh mikioh changed the title runtime: TestTraceStress fails on windows-gce-386 builder runtime/pprof: TestTraceStress fails on windows-gce-386 builder Jul 18, 2015
@ianlancetaylor
Copy link
Contributor

Seems like a dup of #11677.

@ianlancetaylor ianlancetaylor added this to the Go1.5 milestone Jul 18, 2015
@alexbrainman
Copy link
Member Author

Seems like it. Thank you Ian.

Alex

@alexbrainman
Copy link
Member Author

I just discovered that this is broken on my windows-386 pc. It fails every time. I am not sure how to debug this. It seems to me this test just runs out of memory on this OS. Happy to try things.

Alex

@alexbrainman alexbrainman reopened this Jul 21, 2015
@rsc
Copy link
Contributor

rsc commented Jul 23, 2015

It's a dup of #11677: allocation in a tight loop gets too far ahead of the GC. The stack trace in the failure shows that the goroutine is running:

runtime.GC()
// Trigger GC from malloc.
for i := 0; i < 1e3; i++ {
    _ = make([]byte, 1<<20)
}

@rsc rsc closed this as completed Jul 23, 2015
@mikioh mikioh changed the title runtime/pprof: TestTraceStress fails on windows-gce-386 builder runtime/trace: TestTraceStress fails on windows-gce-386 builder Jul 31, 2015
@golang golang locked and limited conversation to collaborators Aug 5, 2016
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

4 participants