diff options
| author | Peter Wemm <peter@FreeBSD.org> | 2001-09-20 06:31:23 +0000 |
|---|---|---|
| committer | Peter Wemm <peter@FreeBSD.org> | 2001-09-20 06:31:23 +0000 |
| commit | d1c276c38304d61b17414a8f48dc29677a96ae80 (patch) | |
| tree | 0cdc63000e73f9f56f3b3180653f17f4dc06ea29 | |
| parent | b126eb6ef22f55fb735a9977431f4aae7000972a (diff) | |
Notes
| -rw-r--r-- | gnu/usr.bin/binutils/gdb/alpha/kvm-fbsd.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/gnu/usr.bin/binutils/gdb/alpha/kvm-fbsd.c b/gnu/usr.bin/binutils/gdb/alpha/kvm-fbsd.c index be956977c37b2..d0d4cf43c0812 100644 --- a/gnu/usr.bin/binutils/gdb/alpha/kvm-fbsd.c +++ b/gnu/usr.bin/binutils/gdb/alpha/kvm-fbsd.c @@ -128,10 +128,17 @@ initial_pcb() * Therefore, just use proc0 and let the user set * some other context if they care about it. */ - addr = ksym_lookup("proc0paddr"); + addr = ksym_lookup("thread0"); if (kvread(addr, &val)) { - error("cannot read proc0paddr pointer at %x\n", addr); + error("cannot read thread0 pointer at %x\n", addr); val = 0; + } else { + /* Read the PCB address in proc structure. */ + addr = (CORE_ADDR)val + offsetof(struct thread, td_pcb); + if (kvread(addr, &val)) { + error("cannot read thread0->td_pcb pointer at %x\n", addr); + val = 0; + } } return ((CORE_ADDR)val); |
