Nathan Whitehorn aba7e013d6 MFC r204268:
Close a race involving the OEA64 scratchpage. When the scratch page's
physical address is changed, there is a brief window during which its PTE
is invalid. Since moea64_set_scratchpage_pa() does not and cannot hold
the page table lock, it was possible for another CPU to insert a new PTE
into the scratch page's PTEG slot during this interval, corrupting both
mappings.

Solve this by creating a new flag, LPTE_LOCKED, such that
moea64_pte_insert will avoid claiming locked PTEG slots even if they
are invalid. This change also incorporates some additional paranoia
added to solve things I thought might be this bug.

Reported by:	linimon
2010-03-20 15:19:57 +00:00
..
2008-11-22 22:15:34 +00:00
2009-12-08 05:37:08 +00:00
2009-05-14 16:56:56 +00:00
2009-10-20 13:32:28 +00:00
2009-12-08 05:27:06 +00:00
2009-12-08 05:37:08 +00:00
2009-10-31 18:54:26 +00:00
2010-03-20 15:19:57 +00:00
2010-03-20 15:15:54 +00:00
2010-03-20 15:15:54 +00:00