| 5149 | } |
| 5150 | |
| 5151 | static void |
| 5152 | free_pv_chunk_dequeued(struct pv_chunk *pc) |
| 5153 | { |
| 5154 | vm_page_t m; |
| 5155 | |
| 5156 | PV_STAT(atomic_subtract_int(&pv_entry_spare, _NPCPV)); |
| 5157 | PV_STAT(atomic_subtract_int(&pc_chunk_count, 1)); |
| 5158 | PV_STAT(atomic_add_int(&pc_chunk_frees, 1)); |
| 5159 | /* entire chunk is free, return it */ |
| 5160 | m = PHYS_TO_VM_PAGE(DMAP_TO_PHYS((vm_offset_t)pc)); |
| 5161 | dump_drop_page(m->phys_addr); |
| 5162 | vm_page_unwire_noq(m); |
| 5163 | vm_page_free(m); |
| 5164 | } |
| 5165 | |
| 5166 | static void |
| 5167 | free_pv_chunk(struct pv_chunk *pc) |
no test coverage detected