MCPcopy Create free account
hub / github.com/F-Stack/f-stack / vunmapbuf

Function vunmapbuf

freebsd/kern/vfs_bio.c:4978–4989  ·  view source on GitHub ↗

* Free the io map PTEs associated with this IO operation. * We also invalidate the TLB entries and restore the original b_addr. * * This function only works with pager buffers. */

Source from the content-addressed store, hash-verified

4976 * This function only works with pager buffers.
4977 */
4978void
4979vunmapbuf(struct buf *bp)
4980{
4981 int npages;
4982
4983 npages = bp->b_npages;
4984 if (buf_mapped(bp))
4985 pmap_qremove(trunc_page((vm_offset_t)bp->b_data), npages);
4986 vm_page_unhold_pages(bp->b_pages, npages);
4987
4988 bp->b_data = unmapped_buf;
4989}
4990
4991void
4992bdone(struct buf *bp)

Callers

nothing calls this directly

Calls 3

buf_mappedFunction · 0.85
vm_page_unhold_pagesFunction · 0.85
pmap_qremoveFunction · 0.50

Tested by

no test coverage detected