diff --git a/sys/arch/arm26/arm26/pmap.c b/sys/arch/arm26/arm26/pmap.c index 12f94155f41b..f0cbf4aaa8b6 100644 --- a/sys/arch/arm26/arm26/pmap.c +++ b/sys/arch/arm26/arm26/pmap.c @@ -1,4 +1,4 @@ -/* $NetBSD: pmap.c,v 1.18 2001/03/15 06:10:36 chs Exp $ */ +/* $NetBSD: pmap.c,v 1.19 2001/04/13 15:09:35 bjh21 Exp $ */ /*- * Copyright (c) 1997, 1998, 2000 Ben Harris * All rights reserved. @@ -105,7 +105,7 @@ #include -__KERNEL_RCSID(0, "$NetBSD: pmap.c,v 1.18 2001/03/15 06:10:36 chs Exp $"); +__KERNEL_RCSID(0, "$NetBSD: pmap.c,v 1.19 2001/04/13 15:09:35 bjh21 Exp $"); #include /* for cold */ #include @@ -808,19 +808,7 @@ pmap_fault(struct pmap *pmap, vaddr_t va, vm_prot_t atype) return FALSE; ppn = pv->pv_ppn; ppv = &pv_table[ppn]; - if (pmap == pmap_kernel()) { - /* - * If we allow the kernel to access the page, we can't - * stop it writing to it as well, so we have to handle - * referenced and modified bits together. - */ - if ((ppv->pv_pflags & PV_REFERENCED) == 0 || - (ppv->pv_pflags & PV_MODIFIED) == 0) { - ppv->pv_pflags |= PV_REFERENCED | PV_MODIFIED; - pmap_update_page(ppn); - return TRUE; - } - } else { + if (pmap != pmap_kernel()) { if ((ppv->pv_pflags & PV_REFERENCED) == 0) { ppv->pv_pflags |= PV_REFERENCED; pmap_update_page(ppn);