You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
If you are using pprof via go tool pprof, what's your go env output?
Go tip (8c10ce164f5b0244f3e08424c13666801b7c5973)
If you run pprof from GitHub, what's the Git revision?
tip (e84dfd6)
What operating system and processor architecture are you using?
Linux/AMD64
What did you do?
Disasm is called with a Sym's End as the end address. Sym.End is the virtual address of last byte in sym (Start+size-1) (internal/plugin/plugin.go:176) whereas Disasm is stopping at (before) the end address (internal/plugin/plugin.go:124), i.e. end should be the address after the last instruction. I've seen the last instruction of a function not disassembled correctly, with both binutils and the Go objdump.
The following patch fixes this. Sorry I don't know how to add a test for this.
What version of pprof are you using?
If you are using pprof via
go tool pprof
, what's yourgo env
output?Go tip (8c10ce164f5b0244f3e08424c13666801b7c5973)
If you run pprof from GitHub, what's the Git revision?
tip (e84dfd6)
What operating system and processor architecture are you using?
Linux/AMD64
What did you do?
Disasm
is called with aSym
'sEnd
as the end address.Sym.End
is thevirtual address of last byte in sym (Start+size-1)
(internal/plugin/plugin.go:176) whereasDisasm
isstopping at (before) the end address
(internal/plugin/plugin.go:124), i.e.end
should be the address after the last instruction. I've seen the last instruction of a function not disassembled correctly, with both binutils and the Go objdump.The following patch fixes this. Sorry I don't know how to add a test for this.
The text was updated successfully, but these errors were encountered: