Lines Matching refs:pp

102 	page_t *pp;  in pvn_read_kluster()  local
166 if ((pp = page_create_va(vp, off - deltab, in pvn_read_kluster()
173 page_add(&plist, pp); in pvn_read_kluster()
186 if ((pp = page_create_va(vp, off + deltaf, in pvn_read_kluster()
194 page_add(&plist, pp); in pvn_read_kluster()
236 page_t *pp, in pvn_write_kluster() argument
249 off = pp->p_offset; in pvn_write_kluster()
259 return (pp); in pvn_write_kluster()
267 dirty = pp; in pvn_write_kluster()
274 pp = page_lookup_nowait(vp, off - deltab, se); in pvn_write_kluster()
275 if (pp == NULL) in pvn_write_kluster()
277 if (pvn_getdirty(pp, flags | B_DELWRI) == 0) in pvn_write_kluster()
279 page_add(&dirty, pp); in pvn_write_kluster()
286 pp = page_lookup_nowait(vp, off + deltaf, se); in pvn_write_kluster()
287 if (pp == NULL) in pvn_write_kluster()
289 if (pvn_getdirty(pp, flags | B_DELWRI) == 0) in pvn_write_kluster()
291 page_add(&dirty, pp); in pvn_write_kluster()
307 page_t *pp; in pvn_io_done() local
310 pp = plist; in pvn_io_done()
311 page_sub(&plist, pp); in pvn_io_done()
312 page_io_unlock(pp); in pvn_io_done()
313 page_unlock(pp); in pvn_io_done()
325 page_t *pp; in pvn_read_done() local
328 pp = plist; in pvn_read_done()
329 page_sub(&plist, pp); in pvn_read_done()
330 page_io_unlock(pp); in pvn_read_done()
333 VN_DISPOSE(pp, B_INVAL, 0, kcred); in pvn_read_done()
335 (void) page_release(pp, 0); in pvn_read_done()
372 page_t *pp; in pvn_write_done() local
392 pp = plist; in pvn_write_done()
393 ASSERT(PAGE_LOCKED(pp) && page_iolock_assert(pp)); in pvn_write_done()
394 page_sub(&plist, pp); in pvn_write_done()
398 vp = pp->p_vnode; in pvn_write_done()
407 if ((pp->p_vpnext != pp) && !hat_ismod(pp)) { in pvn_write_done()
408 page_vpsub(&vp->v_pages, pp); in pvn_write_done()
409 page_vpadd(&vp->v_pages, pp); in pvn_write_done()
426 page_io_unlock(pp); in pvn_write_done()
428 VN_DISPOSE(pp, B_INVAL, 0, kcred); in pvn_write_done()
430 hat_setmod_only(pp); in pvn_write_done()
431 page_io_unlock(pp); in pvn_write_done()
432 page_unlock(pp); in pvn_write_done()
439 page_io_unlock(pp); in pvn_write_done()
441 VN_DISPOSE(pp, B_INVAL, 0, kcred); in pvn_write_done()
442 } else if (flags & B_FREE ||!hat_page_is_mapped(pp)) { in pvn_write_done()
446 if (pp->p_vnode) { in pvn_write_done()
447 if (IS_SWAPFSVP(pp->p_vnode)) { in pvn_write_done()
450 if (pp->p_vnode->v_flag & VVMEXEC) { in pvn_write_done()
457 page_io_unlock(pp); in pvn_write_done()
461 "page_ws_out:pp %p", pp); in pvn_write_done()
468 if (page_tryupgrade(pp) && in pvn_write_done()
469 pp->p_lckcnt == 0 && pp->p_cowcnt == 0) { in pvn_write_done()
483 ppattr = hat_pagesync(pp, HAT_SYNC_DONTZERO | in pvn_write_done()
487 if (hat_page_is_mapped(pp)) { in pvn_write_done()
502 (void) hat_pageunload(pp, in pvn_write_done()
504 ppattr = hat_page_getattr(pp, in pvn_write_done()
512 if (pp->p_vnode) { in pvn_write_done()
513 if (IS_SWAPFSVP(pp->p_vnode)) { in pvn_write_done()
516 if (pp->p_vnode->v_flag in pvn_write_done()
525 VN_DISPOSE(pp, B_FREE, in pvn_write_done()
529 page_unlock(pp); in pvn_write_done()
532 "page_ws_free:pp %p", pp); in pvn_write_done()
540 page_unlock(pp); in pvn_write_done()
547 page_io_unlock(pp); in pvn_write_done()
548 page_unlock(pp); in pvn_write_done()
581 pvn_getdirty(page_t *pp, int flags) in pvn_getdirty() argument
584 PAGE_EXCL(pp) : PAGE_SHARED(pp)); in pvn_getdirty()
585 ASSERT(PP_ISFREE(pp) == 0); in pvn_getdirty()
593 (pp->p_lckcnt != 0 || pp->p_cowcnt != 0)) { in pvn_getdirty()
594 page_unlock(pp); in pvn_getdirty()
611 if (!page_io_trylock(pp)) { in pvn_getdirty()
612 page_unlock(pp); in pvn_getdirty()
616 page_io_lock(pp); in pvn_getdirty()
630 (void) hat_pageunload(pp, HAT_FORCE_PGUNLOAD); in pvn_getdirty()
632 (void) hat_pagesync(pp, HAT_SYNC_ZERORM); in pvn_getdirty()
635 if (!hat_ismod(pp) || (flags & B_TRUNC)) { in pvn_getdirty()
640 page_io_unlock(pp); in pvn_getdirty()
643 VN_DISPOSE(pp, B_INVAL, 0, kcred); in pvn_getdirty()
646 VN_DISPOSE(pp, B_FREE, (flags & B_DONTNEED), kcred); in pvn_getdirty()
660 (void) page_release(pp, 1); in pvn_getdirty()
669 hat_clrrefmod(pp); in pvn_getdirty()
678 page_downgrade(pp); in pvn_getdirty()
681 TRACE_1(TR_FAC_VM, TR_PVN_GETDIRTY, "pvn_getdirty:pp %p", pp); in pvn_getdirty()
746 page_t *pp; in pvn_vplist_dirty() local
824 pp = mark->p_vpprev; in pvn_vplist_dirty()
825 if (vp->v_pages == pp) in pvn_vplist_dirty()
828 where_to_move = &pp->p_vpprev->p_vpnext; in pvn_vplist_dirty()
830 ASSERT(pp->p_vnode == vp); in pvn_vplist_dirty()
840 if (!hat_ismod(pp) && !page_io_locked(pp)) { in pvn_vplist_dirty()
847 page_t *chk = pp; in pvn_vplist_dirty()
866 (void *)pp); in pvn_vplist_dirty()
870 } else if (!(flags & B_ASYNC) && !hat_ismod(pp)) { in pvn_vplist_dirty()
877 page_io_wait(pp); in pvn_vplist_dirty()
887 if (pp->p_offset < off) { in pvn_vplist_dirty()
908 if (!page_lock(pp, se, vphm, P_NO_RECLAIM)) in pvn_vplist_dirty()
929 if (!page_trylock(pp, se)) in pvn_vplist_dirty()
933 ASSERT(pp->p_vnode == vp); in pvn_vplist_dirty()
940 if (PP_ISFREE(pp)) { in pvn_vplist_dirty()
942 page_unlock(pp); in pvn_vplist_dirty()
950 page_destroy_free(pp); in pvn_vplist_dirty()
963 if (pvn_getdirty(pp, flags)) { in pvn_vplist_dirty()
964 error = (*putapage)(vp, pp, NULL, NULL, flags, cred); in pvn_vplist_dirty()
998 page_t *pp, *next, *end; in pvn_vplist_setdirty() local
1012 pp = vp->v_pages; in pvn_vplist_setdirty()
1015 next = pp->p_vpnext; in pvn_vplist_setdirty()
1016 if (pp->p_hash != PVN_VPLIST_HASH_TAG && page_check(pp)) { in pvn_vplist_setdirty()
1022 hat_setmod_only(pp); in pvn_vplist_setdirty()
1024 page_vpsub(&vp->v_pages, pp); in pvn_vplist_setdirty()
1027 pp); in pvn_vplist_setdirty()
1031 if (pp == end) in pvn_vplist_setdirty()
1033 pp = next; in pvn_vplist_setdirty()
1158 pvn_plist_init(page_t *pp, page_t *pl[], size_t plsz, in pvn_plist_init() argument
1168 while (pp != NULL && pp->p_offset != off) { in pvn_plist_init()
1173 ppcur = pp; in pvn_plist_init()
1174 page_sub(&pp, ppcur); in pvn_plist_init()
1179 if (pp == NULL) { in pvn_plist_init()
1191 ppcur = pp; in pvn_plist_init()
1193 page_sub(&pp, ppcur); in pvn_plist_init()
1198 } while (sz > 0 && pp != NULL); in pvn_plist_init()
1205 while (pp != NULL) { in pvn_plist_init()
1206 ppcur = pp; in pvn_plist_init()
1207 page_sub(&pp, ppcur); in pvn_plist_init()