Module Name: src Committed By: dsl Date: Sat Nov 21 19:59:51 UTC 2009
Modified Files: src/sys/arch/i386/i386: db_trace.c Log Message: Don't call lwp_getpcb() when not KERNEL. To generate a diff of this commit: cvs rdiff -u -r1.64 -r1.65 src/sys/arch/i386/i386/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/i386/i386/db_trace.c diff -u src/sys/arch/i386/i386/db_trace.c:1.64 src/sys/arch/i386/i386/db_trace.c:1.65 --- src/sys/arch/i386/i386/db_trace.c:1.64 Sat Nov 21 03:11:00 2009 +++ src/sys/arch/i386/i386/db_trace.c Sat Nov 21 19:59:51 2009 @@ -1,4 +1,4 @@ -/* $NetBSD: db_trace.c,v 1.64 2009/11/21 03:11:00 rmind Exp $ */ +/* $NetBSD: db_trace.c,v 1.65 2009/11/21 19:59:51 dsl Exp $ */ /* * Mach Operating System @@ -27,7 +27,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: db_trace.c,v 1.64 2009/11/21 03:11:00 rmind Exp $"); +__KERNEL_RCSID(0, "$NetBSD: db_trace.c,v 1.65 2009/11/21 19:59:51 dsl Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -452,7 +452,6 @@ sizeof(l), (char *)&l); } (*pr)("lid %d ", l.l_lid); - pcb = lwp_getpcb(&l); #ifdef _KERNEL if (l.l_proc == curproc && (lwp_t *)lwpaddr == curlwp) { @@ -462,6 +461,11 @@ } else #endif { +#ifdef _KERNEL + pcb = lwp_getpcb(&l); +#else + pcb = &l.l_addr->u_pcb; +#endif db_read_bytes((db_addr_t)&pcb->pcb_ebp, sizeof(frame), (char *)&frame); db_read_bytes((db_addr_t)(frame + 1),