Lines Matching refs:tp

62 	struct tmpnode *tp,  in tmp_resv()  argument
69 ASSERT(RW_WRITE_HELD(&tp->tn_rwlock)); in tmp_resv()
70 ASSERT(tp->tn_type == VREG); in tmp_resv()
96 tp, delta); in tmp_resv()
110 struct tmpnode *tp, in tmp_unresv() argument
113 ASSERT(RW_WRITE_HELD(&tp->tn_rwlock)); in tmp_unresv()
114 ASSERT(tp->tn_type == VREG); in tmp_unresv()
122 TRACE_2(TR_FAC_VM, TR_ANON_TMPFS, "anon tmpfs:%p %lu", tp, delta); in tmp_unresv()
131 tmpnode_growmap(struct tmpnode *tp, ulong_t newsize) in tmpnode_growmap() argument
135 ASSERT(RW_WRITE_HELD(&tp->tn_rwlock)); in tmpnode_growmap()
136 ASSERT(RW_WRITE_HELD(&tp->tn_contents)); in tmpnode_growmap()
137 ASSERT(tp->tn_type == VREG); in tmpnode_growmap()
139 if (tp->tn_asize >= np) in tmpnode_growmap()
145 if (tp->tn_anon == NULL) { in tmpnode_growmap()
146 tp->tn_anon = anon_create(MAX(np, TMP_INIT_SZ), ANON_SLEEP); in tmpnode_growmap()
147 tp->tn_asize = tp->tn_anon->size; in tmpnode_growmap()
151 tp->tn_asize = anon_grow(tp->tn_anon, NULL, tp->tn_asize, in tmpnode_growmap()
152 np - tp->tn_asize, ANON_SLEEP); in tmpnode_growmap()
153 ASSERT(tp->tn_asize >= np); in tmpnode_growmap()
230 struct tmpnode *tp, in tmpnode_trunc() argument
233 size_t oldsize = tp->tn_size; in tmpnode_trunc()
235 struct vnode *vp = TNTOV(tp); in tmpnode_trunc()
239 ASSERT(RW_WRITE_HELD(&tp->tn_rwlock)); in tmpnode_trunc()
240 ASSERT(RW_WRITE_HELD(&tp->tn_contents)); in tmpnode_trunc()
247 switch (tp->tn_type) { in tmpnode_trunc()
271 if (tmp_resv(tm, tp, delta, in tmpnode_trunc()
276 tmpnode_growmap(tp, newsize); in tmpnode_trunc()
277 tp->tn_size = newsize; in tmpnode_trunc()
286 freed = anon_pages(tp->tn_anon, btopr(newsize), in tmpnode_trunc()
288 tp->tn_nblocks -= freed; in tmpnode_trunc()
289 anon_free(tp->tn_anon, btopr(newsize), delta); in tmpnode_trunc()
290 tmp_unresv(tm, tp, delta); in tmpnode_trunc()
303 tp->tn_size = newsize; in tmpnode_trunc()
306 if (anon_get_ptr(tp->tn_anon, btop(newsize)) != NULL) { in tmpnode_trunc()
310 rw_exit(&tp->tn_contents); in tmpnode_trunc()
311 pvn_vpzero(TNTOV(tp), (u_offset_t)newsize, zlen); in tmpnode_trunc()
312 rw_enter(&tp->tn_contents, RW_WRITER); in tmpnode_trunc()
317 ASSERT(tp->tn_nblocks == 0); in tmpnode_trunc()
318 ASSERT(anon_get_ptr(tp->tn_anon, 0) == NULL); in tmpnode_trunc()
321 anon_release(tp->tn_anon, tp->tn_asize); in tmpnode_trunc()
322 tp->tn_anon = NULL; in tmpnode_trunc()
323 tp->tn_asize = 0; in tmpnode_trunc()
342 tdirtrunc(tp); in tmpnode_trunc()
343 ASSERT(tp->tn_nlink == 0); in tmpnode_trunc()
351 tp->tn_mtime = now; in tmpnode_trunc()
352 tp->tn_ctime = now; in tmpnode_trunc()