diff options
author | Bill Fenner <fenner@FreeBSD.org> | 2001-09-19 18:42:19 +0000 |
---|---|---|
committer | Bill Fenner <fenner@FreeBSD.org> | 2001-09-19 18:42:19 +0000 |
commit | 9c52cf578520c436a379b0c0edbc299d7c119c08 (patch) | |
tree | 6c362ab611a7d9c5ae92403beab64fbfd55bfd4f /gnu | |
parent | 2622bf6fe4078558e3dba205f86ba2c302cb1b12 (diff) | |
download | src-9c52cf578520c436a379b0c0edbc299d7c119c08.tar.gz src-9c52cf578520c436a379b0c0edbc299d7c119c08.zip |
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
Notes
Notes:
svn path=/head/; revision=83671
Diffstat (limited to 'gnu')
-rw-r--r-- | gnu/usr.bin/binutils/gdb/i386/kvm-fbsd.c | 2 | ||||
-rw-r--r-- | gnu/usr.bin/binutils/gdb/kvm-fbsd.c | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/gnu/usr.bin/binutils/gdb/i386/kvm-fbsd.c b/gnu/usr.bin/binutils/gdb/i386/kvm-fbsd.c index 8a91d97104d0..45d90a059b6a 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 8a91d97104d0..45d90a059b6a 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; |