aboutsummaryrefslogtreecommitdiff
path: root/i386/intel/pmap.c
diff options
context:
space:
mode:
Diffstat (limited to 'i386/intel/pmap.c')
-rw-r--r--i386/intel/pmap.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/i386/intel/pmap.c b/i386/intel/pmap.c
index d15e2418..6218b27a 100644
--- a/i386/intel/pmap.c
+++ b/i386/intel/pmap.c
@@ -1713,7 +1713,7 @@ void pmap_remove(
pt_entry_t *pde = pmap_pde(map, s);
l = (s + PDE_MAPPED_SIZE) & ~(PDE_MAPPED_SIZE-1);
- if (l > e)
+ if (l > e || l < s)
l = e;
if (pde && (*pde & INTEL_PTE_VALID)) {
spte = (pt_entry_t *)ptetokv(*pde);
@@ -1948,7 +1948,7 @@ void pmap_protect(
pt_entry_t *pde = pde = pmap_pde(map, s);
l = (s + PDE_MAPPED_SIZE) & ~(PDE_MAPPED_SIZE-1);
- if (l > e)
+ if (l > e || l < s)
l = e;
if (pde && (*pde & INTEL_PTE_VALID)) {
spte = (pt_entry_t *)ptetokv(*pde);