* After removing a page table entry, this routine is used to * conditionally free the page, and manage the reference count. */
| 1717 | * conditionally free the page, and manage the reference count. |
| 1718 | */ |
| 1719 | static int |
| 1720 | pmap_unuse_pt(pmap_t pmap, vm_offset_t va, pd_entry_t ptepde, |
| 1721 | struct spglist *free) |
| 1722 | { |
| 1723 | vm_page_t mpte; |
| 1724 | |
| 1725 | if (va >= VM_MAXUSER_ADDRESS) |
| 1726 | return (0); |
| 1727 | KASSERT(ptepde != 0, ("pmap_unuse_pt: ptepde != 0")); |
| 1728 | mpte = PHYS_TO_VM_PAGE(ptepde & ~ATTR_MASK); |
| 1729 | return (pmap_unwire_l3(pmap, va, mpte, free)); |
| 1730 | } |
| 1731 | |
| 1732 | /* |
| 1733 | * Release a page table page reference after a failed attempt to create a |
no test coverage detected