From 9c52cf578520c436a379b0c0edbc299d7c119c08 Mon Sep 17 00:00:00 2001 From: Bill Fenner Date: Wed, 19 Sep 2001 18:42:19 +0000 Subject: Don't try to dereference a kernel pointer in userland; use offsetof() to get the right address. This fixes kernel GDB after KSE2. Reviewed by: jhb, jake --- gnu/usr.bin/binutils/gdb/i386/kvm-fbsd.c | 2 +- gnu/usr.bin/binutils/gdb/kvm-fbsd.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/usr.bin/binutils/gdb/i386/kvm-fbsd.c b/gnu/usr.bin/binutils/gdb/i386/kvm-fbsd.c index 8a91d97104d01..45d90a059b6a4 100644 --- a/gnu/usr.bin/binutils/gdb/i386/kvm-fbsd.c +++ b/gnu/usr.bin/binutils/gdb/i386/kvm-fbsd.c @@ -206,7 +206,7 @@ curProc () if (kvread (addr, &td)) error ("cannot read thread pointer at %x\n", addr); - addr = (CORE_ADDR)td->td_proc; + addr = (CORE_ADDR)td + offsetof(struct thread, td_proc); if (kvread (addr, &p)) error ("cannot read proc pointer at %x\n", addr); return p; diff --git a/gnu/usr.bin/binutils/gdb/kvm-fbsd.c b/gnu/usr.bin/binutils/gdb/kvm-fbsd.c index 8a91d97104d01..45d90a059b6a4 100644 --- a/gnu/usr.bin/binutils/gdb/kvm-fbsd.c +++ b/gnu/usr.bin/binutils/gdb/kvm-fbsd.c @@ -206,7 +206,7 @@ curProc () if (kvread (addr, &td)) error ("cannot read thread pointer at %x\n", addr); - addr = (CORE_ADDR)td->td_proc; + addr = (CORE_ADDR)td + offsetof(struct thread, td_proc); if (kvread (addr, &p)) error ("cannot read proc pointer at %x\n", addr); return p; -- cgit v1.3