Module Name: src Committed By: chs Date: Mon Jul 25 01:59:26 UTC 2022
Modified Files: src/sys/arch/m68k/m68k: db_trace.c Log Message: use the pcb of the thread we are tracing rather than always curlwp. To generate a diff of this commit: cvs rdiff -u -r1.59 -r1.60 src/sys/arch/m68k/m68k/db_trace.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/arch/m68k/m68k/db_trace.c diff -u src/sys/arch/m68k/m68k/db_trace.c:1.59 src/sys/arch/m68k/m68k/db_trace.c:1.60 --- src/sys/arch/m68k/m68k/db_trace.c:1.59 Sun Oct 18 17:13:32 2015 +++ src/sys/arch/m68k/m68k/db_trace.c Mon Jul 25 01:59:26 2022 @@ -1,4 +1,4 @@ -/* $NetBSD: db_trace.c,v 1.59 2015/10/18 17:13:32 maxv Exp $ */ +/* $NetBSD: db_trace.c,v 1.60 2022/07/25 01:59:26 chs Exp $ */ /* * Mach Operating System @@ -27,7 +27,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: db_trace.c,v 1.59 2015/10/18 17:13:32 maxv Exp $"); +__KERNEL_RCSID(0, "$NetBSD: db_trace.c,v 1.60 2022/07/25 01:59:26 chs Exp $"); #include <sys/param.h> #include <sys/proc.h> @@ -393,6 +393,7 @@ db_stack_trace_print(db_expr_t addr, boo const char * name; struct stackpos pos; struct pcb *pcb; + struct lwp *l; #ifdef _KERNEL bool kernel_only = true; #endif @@ -417,12 +418,12 @@ db_stack_trace_print(db_expr_t addr, boo } } + l = curlwp; if (!have_addr) stacktop(&ddb_regs, &pos, pr); else { if (trace_thread) { struct proc *p; - struct lwp *l; if (lwpaddr) { l = (struct lwp *)addr; @@ -554,7 +555,7 @@ db_stack_trace_print(db_expr_t addr, boo * Stop tracing if frame ptr no longer points into kernel * stack. */ - pcb = lwp_getpcb(curlwp); + pcb = lwp_getpcb(l); if (kernel_only && !INKERNEL(pos.k_fp, pcb)) break; if (nextframe(&pos, pcb, kernel_only, pr) == 0)