SCCS-vsn: sys/hp300/hp300/machdep.c 8.15
*
* from: Utah $Hdr: machdep.c 1.74 92/12/20$
*
*
* from: Utah $Hdr: machdep.c 1.74 92/12/20$
*
- * @(#)machdep.c 8.14 (Berkeley) %G%
+ * @(#)machdep.c 8.15 (Berkeley) %G%
*/
#include <sys/param.h>
*/
#include <sys/param.h>
/*
* print a primitive backtrace for the requested process.
*/
/*
* print a primitive backtrace for the requested process.
*/
backtrace(p)
struct proc *p;
{
backtrace(p)
struct proc *p;
{
printf("Process %s\n", p->p_comm);
while (fp > kstack) {
fp += fix;
printf("Process %s\n", p->p_comm);
while (fp > kstack) {
fp += fix;
- printf("Function: 0x%x(", pc);
+ if (kernacc(fp, 6 * sizeof(*lfp), B_READ) == 0)
+ return;
- fmt = ", ";
- for (i = 0; i < MAXARGS; i++) {
- arg = lfp[i + 2];
- if (i == MAXARGS - 1)
- fmt = ")\n";
- printf("0x%x%s", arg, fmt);
- }
+ printf("Function: 0x%x(0x%x, 0x%x, 0x%x, 0x%x)\n",
+ pc, lfp[2], lfp[3], lfp[4], lfp[5]);
pc = lfp[1];
fp = (caddr_t)lfp[0];
}
pc = lfp[1];
fp = (caddr_t)lfp[0];
}