Lines Matching refs:pp

103 	page_t *pp;  in pvn_read_kluster()  local
167 if ((pp = page_create_va(vp, off - deltab, in pvn_read_kluster()
174 page_add(&plist, pp); in pvn_read_kluster()
187 if ((pp = page_create_va(vp, off + deltaf, in pvn_read_kluster()
195 page_add(&plist, pp); in pvn_read_kluster()
237 page_t *pp, in pvn_write_kluster() argument
250 off = pp->p_offset; in pvn_write_kluster()
260 return (pp); in pvn_write_kluster()
268 dirty = pp; in pvn_write_kluster()
275 pp = page_lookup_nowait(vp, off - deltab, se); in pvn_write_kluster()
276 if (pp == NULL) in pvn_write_kluster()
278 if (pvn_getdirty(pp, flags | B_DELWRI) == 0) in pvn_write_kluster()
280 page_add(&dirty, pp); in pvn_write_kluster()
287 pp = page_lookup_nowait(vp, off + deltaf, se); in pvn_write_kluster()
288 if (pp == NULL) in pvn_write_kluster()
290 if (pvn_getdirty(pp, flags | B_DELWRI) == 0) in pvn_write_kluster()
292 page_add(&dirty, pp); in pvn_write_kluster()
308 page_t *pp; in pvn_io_done() local
311 pp = plist; in pvn_io_done()
312 page_sub(&plist, pp); in pvn_io_done()
313 page_io_unlock(pp); in pvn_io_done()
314 page_unlock(pp); in pvn_io_done()
326 page_t *pp; in pvn_read_done() local
329 pp = plist; in pvn_read_done()
330 page_sub(&plist, pp); in pvn_read_done()
331 page_io_unlock(pp); in pvn_read_done()
334 VN_DISPOSE(pp, B_INVAL, 0, kcred); in pvn_read_done()
336 (void) page_release(pp, 0); in pvn_read_done()
373 page_t *pp; in pvn_write_done() local
393 pp = plist; in pvn_write_done()
394 ASSERT(PAGE_LOCKED(pp) && page_iolock_assert(pp)); in pvn_write_done()
395 page_sub(&plist, pp); in pvn_write_done()
399 vp = pp->p_vnode; in pvn_write_done()
408 if ((pp->p_vpnext != pp) && !hat_ismod(pp)) { in pvn_write_done()
409 page_vpsub(&vp->v_pages, pp); in pvn_write_done()
410 page_vpadd(&vp->v_pages, pp); in pvn_write_done()
427 page_io_unlock(pp); in pvn_write_done()
429 VN_DISPOSE(pp, B_INVAL, 0, kcred); in pvn_write_done()
431 hat_setmod_only(pp); in pvn_write_done()
432 page_io_unlock(pp); in pvn_write_done()
433 page_unlock(pp); in pvn_write_done()
440 page_io_unlock(pp); in pvn_write_done()
442 VN_DISPOSE(pp, B_INVAL, 0, kcred); in pvn_write_done()
443 } else if (flags & B_FREE ||!hat_page_is_mapped(pp)) { in pvn_write_done()
447 if (pp->p_vnode) { in pvn_write_done()
448 if (IS_SWAPFSVP(pp->p_vnode)) { in pvn_write_done()
451 if (pp->p_vnode->v_flag & VVMEXEC) { in pvn_write_done()
458 page_io_unlock(pp); in pvn_write_done()
462 "page_ws_out:pp %p", pp); in pvn_write_done()
469 if (page_tryupgrade(pp) && in pvn_write_done()
470 pp->p_lckcnt == 0 && pp->p_cowcnt == 0) { in pvn_write_done()
484 ppattr = hat_pagesync(pp, HAT_SYNC_DONTZERO | in pvn_write_done()
488 if (hat_page_is_mapped(pp)) { in pvn_write_done()
503 (void) hat_pageunload(pp, in pvn_write_done()
505 ppattr = hat_page_getattr(pp, in pvn_write_done()
513 if (pp->p_vnode) { in pvn_write_done()
514 if (IS_SWAPFSVP(pp->p_vnode)) { in pvn_write_done()
517 if (pp->p_vnode->v_flag in pvn_write_done()
526 VN_DISPOSE(pp, B_FREE, in pvn_write_done()
530 page_unlock(pp); in pvn_write_done()
533 "page_ws_free:pp %p", pp); in pvn_write_done()
541 page_unlock(pp); in pvn_write_done()
548 page_io_unlock(pp); in pvn_write_done()
549 page_unlock(pp); in pvn_write_done()
589 pvn_getdirty(page_t *pp, int flags) in pvn_getdirty() argument
592 PAGE_EXCL(pp) : PAGE_SHARED(pp)); in pvn_getdirty()
593 ASSERT(PP_ISFREE(pp) == 0); in pvn_getdirty()
601 (pp->p_lckcnt != 0 || pp->p_cowcnt != 0)) { in pvn_getdirty()
602 page_unlock(pp); in pvn_getdirty()
619 if (!page_io_trylock(pp)) { in pvn_getdirty()
620 page_unlock(pp); in pvn_getdirty()
624 page_io_lock(pp); in pvn_getdirty()
638 (void) hat_pageunload(pp, HAT_FORCE_PGUNLOAD); in pvn_getdirty()
640 (void) hat_pagesync(pp, HAT_SYNC_ZERORM); in pvn_getdirty()
643 if (!hat_ismod(pp) || (flags & B_TRUNC)) { in pvn_getdirty()
648 page_io_unlock(pp); in pvn_getdirty()
651 VN_DISPOSE(pp, B_INVAL, 0, kcred); in pvn_getdirty()
654 VN_DISPOSE(pp, B_FREE, (flags & B_DONTNEED), kcred); in pvn_getdirty()
668 (void) page_release(pp, 1); in pvn_getdirty()
677 hat_clrrefmod(pp); in pvn_getdirty()
686 page_downgrade(pp); in pvn_getdirty()
689 TRACE_1(TR_FAC_VM, TR_PVN_GETDIRTY, "pvn_getdirty:pp %p", pp); in pvn_getdirty()
754 page_t *pp; in pvn_vplist_dirty() local
832 pp = mark->p_vpprev; in pvn_vplist_dirty()
833 if (vp->v_pages == pp) in pvn_vplist_dirty()
836 where_to_move = &pp->p_vpprev->p_vpnext; in pvn_vplist_dirty()
838 ASSERT(pp->p_vnode == vp); in pvn_vplist_dirty()
848 if (!hat_ismod(pp) && !page_io_locked(pp)) { in pvn_vplist_dirty()
855 page_t *chk = pp; in pvn_vplist_dirty()
874 (void *)pp); in pvn_vplist_dirty()
878 } else if (!(flags & B_ASYNC) && !hat_ismod(pp)) { in pvn_vplist_dirty()
885 page_io_wait(pp); in pvn_vplist_dirty()
895 if (pp->p_offset < off) { in pvn_vplist_dirty()
916 if (!page_lock(pp, se, vphm, P_NO_RECLAIM)) in pvn_vplist_dirty()
937 if (!page_trylock(pp, se)) in pvn_vplist_dirty()
941 ASSERT(pp->p_vnode == vp); in pvn_vplist_dirty()
948 if (PP_ISFREE(pp)) { in pvn_vplist_dirty()
950 page_unlock(pp); in pvn_vplist_dirty()
958 page_destroy_free(pp); in pvn_vplist_dirty()
971 if (pvn_getdirty(pp, flags)) { in pvn_vplist_dirty()
972 error = (*putapage)(vp, pp, NULL, NULL, flags, cred); in pvn_vplist_dirty()
1006 page_t *pp, *next, *end; in pvn_vplist_setdirty() local
1020 pp = vp->v_pages; in pvn_vplist_setdirty()
1023 next = pp->p_vpnext; in pvn_vplist_setdirty()
1024 if (pp->p_hash != PVN_VPLIST_HASH_TAG && page_check(pp)) { in pvn_vplist_setdirty()
1030 hat_setmod_only(pp); in pvn_vplist_setdirty()
1032 page_vpsub(&vp->v_pages, pp); in pvn_vplist_setdirty()
1035 pp); in pvn_vplist_setdirty()
1039 if (pp == end) in pvn_vplist_setdirty()
1041 pp = next; in pvn_vplist_setdirty()
1166 pvn_plist_init(page_t *pp, page_t *pl[], size_t plsz, in pvn_plist_init() argument
1176 while (pp != NULL && pp->p_offset != off) { in pvn_plist_init()
1181 ppcur = pp; in pvn_plist_init()
1182 page_sub(&pp, ppcur); in pvn_plist_init()
1187 if (pp == NULL) { in pvn_plist_init()
1199 ppcur = pp; in pvn_plist_init()
1201 page_sub(&pp, ppcur); in pvn_plist_init()
1206 } while (sz > 0 && pp != NULL); in pvn_plist_init()
1213 while (pp != NULL) { in pvn_plist_init()
1214 ppcur = pp; in pvn_plist_init()
1215 page_sub(&pp, ppcur); in pvn_plist_init()