Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/sys/arch/i386/i386 examine the PDE in addition to the PTE wh...
details: https://anonhg.NetBSD.org/src/rev/87cf69d5c4b3
branches: trunk
changeset: 499569:87cf69d5c4b3
user: chs <chs%NetBSD.org@localhost>
date: Thu Nov 23 21:44:52 2000 +0000
description:
examine the PDE in addition to the PTE when checking for valid mappings.
diffstat:
sys/arch/i386/i386/db_disasm.c | 7 ++++---
1 files changed, 4 insertions(+), 3 deletions(-)
diffs (28 lines):
diff -r ccfe9f721b60 -r 87cf69d5c4b3 sys/arch/i386/i386/db_disasm.c
--- a/sys/arch/i386/i386/db_disasm.c Thu Nov 23 16:26:50 2000 +0000
+++ b/sys/arch/i386/i386/db_disasm.c Thu Nov 23 21:44:52 2000 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: db_disasm.c,v 1.21 2000/09/06 22:22:27 thorpej Exp $ */
+/* $NetBSD: db_disasm.c,v 1.22 2000/11/23 21:44:52 chs Exp $ */
/*
* Mach Operating System
@@ -1091,7 +1091,7 @@
int imm2;
int len;
struct i_addr address;
- pt_entry_t *pte;
+ pt_entry_t *pte, *pde;
/*
* Don't try to disassemble the location if the mapping is invalid.
@@ -1101,7 +1101,8 @@
pte = kvtopte((vaddr_t)loc);
else
pte = vtopte((vaddr_t)loc);
- if ((*pte & PG_V) == 0) {
+ pde = vtopte((vaddr_t)pte);
+ if ((*pde & PG_V) == 0 || (*pte & PG_V) == 0) {
db_printf("invalid address\n");
return (loc);
}
Home |
Main Index |
Thread Index |
Old Index