Lines Matching refs:idesc

73 ckinode(union dinode *dp, struct inodesc *idesc)  in ckinode()  argument
83 if (idesc->id_fix != IGNORE) in ckinode()
84 idesc->id_fix = DONTKNOW; in ckinode()
85 idesc->id_entryno = 0; in ckinode()
86 idesc->id_filesize = iswap64(DIP(dp, size)); in ckinode()
89 (idesc->id_filesize < sblock->fs_maxsymlinklen || in ckinode()
90 (isappleufs && (idesc->id_filesize < APPLEUFS_MAXSYMLINKLEN)) || in ckinode()
101 idesc->id_numfrags = in ckinode()
104 idesc->id_numfrags = sblock->fs_frag; in ckinode()
106 if (idesc->id_type == DATA && ndb >= 0) { in ckinode()
110 idesc->id_number, idesc->id_number); in ckinode()
114 dp = ginode(idesc->id_number); in ckinode()
126 idesc->id_blkno = iswap64(dino.dp2.di_db[i]); in ckinode()
128 idesc->id_blkno = iswap32(dino.dp1.di_db[i]); in ckinode()
129 if (idesc->id_type != DATA) in ckinode()
130 ret = (*idesc->id_func)(idesc); in ckinode()
132 ret = dirscan(idesc); in ckinode()
136 idesc->id_numfrags = sblock->fs_frag; in ckinode()
142 idesc->id_blkno = iswap64(dino.dp2.di_ib[i]); in ckinode()
144 idesc->id_blkno = iswap32(dino.dp1.di_ib[i]); in ckinode()
145 ret = iblock(idesc, i + 1, remsize); in ckinode()
149 if (idesc->id_type == DATA && remsize > 0) { in ckinode()
153 idesc->id_number, idesc->id_number); in ckinode()
157 dp = ginode(idesc->id_number); in ckinode()
177 iblock(struct inodesc *idesc, long ilevel, u_int64_t isize) in iblock() argument
186 if (idesc->id_type != DATA) { in iblock()
187 func = idesc->id_func; in iblock()
188 if (((n = (*func)(idesc)) & KEEPON) == 0) in iblock()
192 if (chkrange(idesc->id_blkno, idesc->id_numfrags)) in iblock()
194 bp = getdatablk(idesc->id_blkno, sblock->fs_bsize); in iblock()
215 if (idesc->id_func == pass1check && nif < FFS_NINDIR(sblock)) { in iblock()
221 (unsigned long long)idesc->id_number); in iblock()
222 if (dofix(idesc, buf)) { in iblock()
233 idesc->id_blkno = iswap64(bp->b_un.b_indir2[i]); in iblock()
235 idesc->id_blkno = iswap32(bp->b_un.b_indir1[i]); in iblock()
237 n = (*func)(idesc); in iblock()
239 n = iblock(idesc, ilevel, isize); in iblock()
245 if (idesc->id_type == DATA && isize > 0) { in iblock()
249 idesc->id_number, idesc->id_number); in iblock()
253 dp = ginode(idesc->id_number); in iblock()
575 clri(struct inodesc *idesc, const char *type, int flag) in clri() argument
579 dp = ginode(idesc->id_number); in clri()
583 pinode(idesc->id_number); in clri()
593 if (idesc->id_type != SNAP) in clri()
594 update_uquot(idesc->id_number, in clri()
595 idesc->id_uid, idesc->id_gid, 0, -1); in clri()
596 (void)ckinode(dp, idesc); in clri()
598 inoinfo(idesc->id_number)->ino_state = USTATE; in clri()
605 findname(struct inodesc *idesc) in findname() argument
607 struct direct *dirp = idesc->id_dirp; in findname()
611 if (iswap32(dirp->d_ino) != idesc->id_parent || idesc->id_entryno < 2) { in findname()
612 idesc->id_entryno++; in findname()
620 buf = __UNCONST(idesc->id_name); in findname()
626 findino(struct inodesc *idesc) in findino() argument
628 struct direct *dirp = idesc->id_dirp; in findino()
632 if (strcmp(dirp->d_name, idesc->id_name) == 0 && in findino()
634 idesc->id_parent = iswap32(dirp->d_ino); in findino()
641 clearentry(struct inodesc *idesc) in clearentry() argument
643 struct direct *dirp = idesc->id_dirp; in clearentry()
645 if (dirp->d_ino != idesc->id_parent || idesc->id_entryno < 2) { in clearentry()
646 idesc->id_entryno++; in clearentry()
829 struct inodesc idesc; in freeino() local
844 memset(&idesc, 0, sizeof(struct inodesc)); in freeino()
845 idesc.id_func = pass4check; in freeino()
846 idesc.id_number = ino; in freeino()
848 idesc.id_uid = iswap32(DIP(dp, uid)); in freeino()
849 idesc.id_gid = iswap32(DIP(dp, gid)); in freeino()
851 idesc.id_type = SNAP; in freeino()
853 idesc.id_type = ADDR; in freeino()
854 (void)ckinode(dp, &idesc); in freeino()
858 if (idesc.id_type != SNAP) in freeino()
859 update_uquot(idesc.id_number, in freeino()
860 idesc.id_uid, idesc.id_gid, 0, -1); in freeino()