svn commit: r216383 - head/sys/powerpc/aim

Nathan Whitehorn nwhitehorn at FreeBSD.org
Sat Dec 11 20:29:53 UTC 2010


Author: nwhitehorn
Date: Sat Dec 11 20:29:52 2010
New Revision: 216383
URL: http://svn.freebsd.org/changeset/base/216383

Log:
  Add some isync()s related to the 64-bit MMU scratch page to avoid race
  conditions on its invalidation.

Modified:
  head/sys/powerpc/aim/mmu_oea64.c
  head/sys/powerpc/aim/moea64_native.c

Modified: head/sys/powerpc/aim/mmu_oea64.c
==============================================================================
--- head/sys/powerpc/aim/mmu_oea64.c	Sat Dec 11 20:12:42 2010	(r216382)
+++ head/sys/powerpc/aim/mmu_oea64.c	Sat Dec 11 20:29:52 2010	(r216383)
@@ -1114,6 +1114,7 @@ void moea64_set_scratchpage_pa(mmu_t mmu
 	MOEA64_PTE_CHANGE(mmup, moea64_scratchpage_pte[which],
 	    &moea64_scratchpage_pvo[which]->pvo_pte.lpte,
 	    moea64_scratchpage_pvo[which]->pvo_vpn);
+	isync();
 }
 
 void

Modified: head/sys/powerpc/aim/moea64_native.c
==============================================================================
--- head/sys/powerpc/aim/moea64_native.c	Sat Dec 11 20:12:42 2010	(r216382)
+++ head/sys/powerpc/aim/moea64_native.c	Sat Dec 11 20:29:52 2010	(r216383)
@@ -292,6 +292,9 @@ moea64_pte_unset_native(mmu_t mmu, uintp
 
 	pvo_pt->pte_hi &= ~LPTE_VALID;
 
+	/* Finish all pending operations */
+	isync();
+
 	/*
 	 * Force the reg & chg bits back into the PTEs.
 	 */


More information about the svn-src-head mailing list