Rewrite of powerpc pmap_page_protect(), the old version had a couple of possible bugs in it which could cause the code to spin indefinately attempting to remove all mappings for a page.
Rewrite of powerpc pmap_page_protect(), the old version had a couple of
possible bugs in it which could cause the code to spin indefinately
attempting to remove all mappings for a page.

This is now able to survive a paging death program and additional other
testing.

orumin/openbsd-efivars,orumin/openbsd-efivars,orumin/openbsd-efivars,orumin/openbsd-efivars