From daaf2e922f028b52c7654d7ffacd86a5f39dd69f Mon Sep 17 00:00:00 2001 From: dyson Date: Tue, 21 May 1996 00:39:39 +0000 Subject: [PATCH] To quote Stephen McKay: pmap_copy is a complex NOP at this moment :-). With this fix from Stephen, we are getting the target fork performance that I have been trying to attain: P5-166, before the mega-commit: 700-800usecs, after: 600usecs, with Stephen's fix: 500usecs!!! Also, this could be the solution of some strange panic problems... Reviewed by: dyson@freebsd.org Submitted by: Stephen McKay --- sys/amd64/amd64/pmap.c | 4 ++-- sys/i386/i386/pmap.c | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/sys/amd64/amd64/pmap.c b/sys/amd64/amd64/pmap.c index 61da7a13f9b6..7efb451435be 100644 --- a/sys/amd64/amd64/pmap.c +++ b/sys/amd64/amd64/pmap.c @@ -39,7 +39,7 @@ * SUCH DAMAGE. * * from: @(#)pmap.c 7.7 (Berkeley) 5/12/91 - * $Id: pmap.c,v 1.90 1996/05/18 03:36:14 dyson Exp $ + * $Id: pmap.c,v 1.91 1996/05/19 07:36:37 dyson Exp $ */ /* @@ -1943,7 +1943,7 @@ pmap_copy(dst_pmap, src_pmap, dst_addr, len, src_addr) pdnxt = ((addr + PAGE_SIZE*NPTEPG) & ~(PAGE_SIZE*NPTEPG - 1)); srcptepaddr = (vm_offset_t) src_pmap->pm_pdir[addr >> PDRSHIFT]; - if (srcptepaddr) { + if (srcptepaddr == 0) { continue; } diff --git a/sys/i386/i386/pmap.c b/sys/i386/i386/pmap.c index 61da7a13f9b6..7efb451435be 100644 --- a/sys/i386/i386/pmap.c +++ b/sys/i386/i386/pmap.c @@ -39,7 +39,7 @@ * SUCH DAMAGE. * * from: @(#)pmap.c 7.7 (Berkeley) 5/12/91 - * $Id: pmap.c,v 1.90 1996/05/18 03:36:14 dyson Exp $ + * $Id: pmap.c,v 1.91 1996/05/19 07:36:37 dyson Exp $ */ /* @@ -1943,7 +1943,7 @@ pmap_copy(dst_pmap, src_pmap, dst_addr, len, src_addr) pdnxt = ((addr + PAGE_SIZE*NPTEPG) & ~(PAGE_SIZE*NPTEPG - 1)); srcptepaddr = (vm_offset_t) src_pmap->pm_pdir[addr >> PDRSHIFT]; - if (srcptepaddr) { + if (srcptepaddr == 0) { continue; }