Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 25 Mar 2010 17:24:03 +0000 (UTC)
From:      Alan Cox <alc@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r205652 - head/sys/i386/i386
Message-ID:  <201003251724.o2PHO3KC087681@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: alc
Date: Thu Mar 25 17:24:03 2010
New Revision: 205652
URL: http://svn.freebsd.org/changeset/base/205652

Log:
  A ptrace(2) by one processor may trigger a promotion in the address space
  of another process.  Modify pmap_promote_pde() to handle this.  (This is
  not a problem on amd64 due to implementation differences.)
  
  Reported by:	jh@
  MFC after:	1 week

Modified:
  head/sys/i386/i386/pmap.c

Modified: head/sys/i386/i386/pmap.c
==============================================================================
--- head/sys/i386/i386/pmap.c	Thu Mar 25 17:17:35 2010	(r205651)
+++ head/sys/i386/i386/pmap.c	Thu Mar 25 17:24:03 2010	(r205652)
@@ -3154,7 +3154,7 @@ pmap_promote_pde(pmap_t pmap, pd_entry_t
 	 * either invalid, unused, or does not map the first 4KB physical page
 	 * within a 2- or 4MB page.
 	 */
-	firstpte = vtopte(trunc_4mpage(va));
+	firstpte = pmap_pte_quick(pmap, trunc_4mpage(va));
 setpde:
 	newpde = *firstpte;
 	if ((newpde & ((PG_FRAME & PDRMASK) | PG_A | PG_V)) != (PG_A | PG_V)) {



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201003251724.o2PHO3KC087681>