aboutsummaryrefslogtreecommitdiff
path: root/src/libmach/frame.c
diff options
context:
space:
mode:
authorrsc <devnull@localhost>2005-01-23 22:33:04 +0000
committerrsc <devnull@localhost>2005-01-23 22:33:04 +0000
commitdd944ec72a26d0b380ba2af5f6c00310f2f1651e (patch)
tree2f40332ca2fcf189d347cf4f577cf613af21108f /src/libmach/frame.c
parenta0e8d02d093e01fdadf8a16bc86fe18b0c4e82c3 (diff)
downloadplan9port-dd944ec72a26d0b380ba2af5f6c00310f2f1651e.tar.gz
plan9port-dd944ec72a26d0b380ba2af5f6c00310f2f1651e.tar.bz2
plan9port-dd944ec72a26d0b380ba2af5f6c00310f2f1651e.zip
Start working through proper handling of pthreads when
debugging Linux core dumps. Pthreads for active processes is still not supported, nor are other systems.
Diffstat (limited to 'src/libmach/frame.c')
-rw-r--r--src/libmach/frame.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/libmach/frame.c b/src/libmach/frame.c
index 035c6a52..7d03f3b4 100644
--- a/src/libmach/frame.c
+++ b/src/libmach/frame.c
@@ -87,8 +87,12 @@ stacktrace(Map *map, Regs *regs, Tracer trace)
break;
if(i < 0)
break;
- if(sp && strcmp(sp->name, "main") == 0)
- break;
+ if(sp){
+ if(strcmp(sp->name, "main") == 0
+ || strcmp(sp->name, "procscheduler") == 0
+ || strcmp(sp->name, "threadstart") == 0)
+ break;
+ }
pc = nextpc;
memmove(cur, next, mach->nwindreg*sizeof(cur[0]));
}