-
Notifications
You must be signed in to change notification settings - Fork 18.8k
Open
Labels
compiler/runtimeIssues related to the Go compiler and/or runtime.Issues related to the Go compiler and/or runtime.
Milestone
Description
go version devel +c7754c8 Tue Jan 19 06:20:36 2016 +0000 linux/amd64
SVG profile for my program shows:
You can see that as if reflect.Value.call directly allocates a lot. This does not make sense.
In text profile I see records that are probably these reflect.Value.call allocations. But in SVG they are trimmed at reflect.Value.call. RPC servers can allocate most of its memory during request serving, so this is pretty unfortunate.
944: 3866624 [15104: 61865984] @ 0x452e65 0x56df40 0x56d0b5 0x40b72d 0x40bf66 0x46d5ae 0x8a17ed 0x8a04b1 0x832e52 0x46fbc1
# 0x56df40 github.com/google/syzkaller/prog.calcDynamicPrio+0xb0 gopath/src/github.com/google/syzkaller/prog/prio.go:153
# 0x56d0b5 github.com/google/syzkaller/prog.CalculatePriorities+0x75 gopath/src/github.com/google/syzkaller/prog/prio.go:31
# 0x40b72d main.(*Manager).minimizeCorpus+0x9ed gopath/src/github.com/google/syzkaller/syz-manager/manager.go:341
# 0x40bf66 main.(*Manager).Connect+0x216 gopath/src/github.com/google/syzkaller/syz-manager/manager.go:363
# 0x46d5ae runtime.call64+0x3e go/src/runtime/asm_amd64.s:473
# 0x8a17ed reflect.Value.call+0x120d go/src/reflect/value.go:435
# 0x8a04b1 reflect.Value.Call+0xb1 go/src/reflect/value.go:303
# 0x832e52 net/rpc.(*service).call+0x1c2 go/src/net/rpc/server.go:383
1: 1761280 [1: 1761280] @ 0x453261 0x40c701 0x46d5ae 0x8a17ed 0x8a04b1 0x832e52 0x46fbc1
# 0x40c701 main.(*Manager).NewInput+0x611 gopath/src/github.com/google/syzkaller/syz-manager/manager.go:383
# 0x46d5ae runtime.call64+0x3e go/src/runtime/asm_amd64.s:473
# 0x8a17ed reflect.Value.call+0x120d go/src/reflect/value.go:435
# 0x8a04b1 reflect.Value.Call+0xb1 go/src/reflect/value.go:303
# 0x832e52 net/rpc.(*service).call+0x1c2 go/src/net/rpc/server.go:383
1: 1515520 [1: 1515520] @ 0x453261 0x40d8fb 0x40c6b9 0x46d5ae 0x8a17ed 0x8a04b1 0x832e52 0x46fbc1
# 0x40d8fb main.(*PersistentSet).add+0x49b gopath/src/github.com/google/syzkaller/syz-manager/persistent.go:100
# 0x40c6b9 main.(*Manager).NewInput+0x5c9 gopath/src/github.com/google/syzkaller/syz-manager/manager.go:385
# 0x46d5ae runtime.call64+0x3e go/src/runtime/asm_amd64.s:473
# 0x8a17ed reflect.Value.call+0x120d go/src/reflect/value.go:435
# 0x8a04b1 reflect.Value.Call+0xb1 go/src/reflect/value.go:303
# 0x832e52 net/rpc.(*service).call+0x1c2 go/src/net/rpc/server.go:383
Metadata
Metadata
Assignees
Labels
compiler/runtimeIssues related to the Go compiler and/or runtime.Issues related to the Go compiler and/or runtime.
