This is the mail archive of the
systemtap@sourceware.org
mailing list for the systemtap project.
[Bug uprobes/18171] setjmp/longjmp clashing with u[ret]probes, causing SIGSEGV or SIGILL
- From: "mjw at redhat dot com" <sourceware-bugzilla at sourceware dot org>
- To: systemtap at sourceware dot org
- Date: Thu, 09 Apr 2015 21:26:20 +0000
- Subject: [Bug uprobes/18171] setjmp/longjmp clashing with u[ret]probes, causing SIGSEGV or SIGILL
- Auto-submitted: auto-generated
- References: <bug-18171-6586 at http dot sourceware dot org/bugzilla/>
https://sourceware.org/bugzilla/show_bug.cgi?id=18171
Mark Wielaard <mjw at redhat dot com> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |mjw at redhat dot com
--- Comment #2 from Mark Wielaard <mjw at redhat dot com> ---
Just a note that it seems the same is true for the golang runtime.
Although I haven't pinpointed it precisely it seems at least some code in the
garbage collector seems to get upset when we place return probe.
e.g.
$ cat hello.go
package main
import "fmt"
func main() {
fmt.Printf("Hello, world.\n")
}
$ go build hello.go
$ ./run-stap -e 'probe process.function("*").call {printf("%s->%s %s\n",
thread_indent (1), ppfunc (), $$parms)} probe process.function("*").return
{printf("%s<-%s %s\n", thread_indent (-1), ppfunc (), $$return)}' -c ./hello
[...]
fatal error: panic on m stack
runtime stack:
WARNING: Child process exited with status 2
[...]
Without the process.function("*").return probe things look fine (assuming you
have the fixes for PR17957, PR17958 and PR17959).
--
You are receiving this mail because:
You are the assignee for the bug.