kernel - Add some more options for pmap_qremove*()
* Add pmap_qremove_quick() and pmap_qremove_noinval(), allowing pmap
entries to be removed without invalidation under carefully managed
circumstances by other subsystems.
* Redo the virtual kernel a little to work the same as the real kernel
when entering new pmap entries. We cannot assume that no invalidation
is needed when the prior contents of the pte is 0, because there are
several ways it could have become 0 without a prior invalidation.
Also use an atomic op to clear the entry.