* Conditionally create a pv entry. */
| 1723 | * Conditionally create a pv entry. |
| 1724 | */ |
| 1725 | static boolean_t |
| 1726 | pmap_try_insert_pv_entry(pmap_t pmap, vm_page_t mpte, vm_offset_t va, |
| 1727 | vm_page_t m) |
| 1728 | { |
| 1729 | pv_entry_t pv; |
| 1730 | |
| 1731 | rw_assert(&pvh_global_lock, RA_WLOCKED); |
| 1732 | PMAP_LOCK_ASSERT(pmap, MA_OWNED); |
| 1733 | if ((pv = get_pv_entry(pmap, TRUE)) != NULL) { |
| 1734 | pv->pv_va = va; |
| 1735 | TAILQ_INSERT_TAIL(&m->md.pv_list, pv, pv_list); |
| 1736 | return (TRUE); |
| 1737 | } else |
| 1738 | return (FALSE); |
| 1739 | } |
| 1740 | |
| 1741 | /* |
| 1742 | * pmap_remove_pte: do the things to unmap a page in a process |
no test coverage detected