Lines Matching refs:vinfo
145 struct nandfs_vinfo *vinfo, struct nandfs_cpinfo *cp, uint32_t ncps)
149 if (vinfo->nvi_end >= fsdev->nd_last_cno)
155 if (vinfo->nvi_end < cp[0].nci_cno ||
156 vinfo->nvi_start > cp[ncps - 1].nci_cno)
163 if (vinfo->nvi_start == cp[idx].nci_cno)
165 if (vinfo->nvi_start < cp[idx].nci_cno)
171 return (vinfo->nvi_end >= cp[idx].nci_cno);
176 struct nandfs_vinfo *vinfo, uint32_t nmembs, struct nandfs_cpinfo *cp,
182 vinfo[i].nvi_alive =
183 nandfs_cleaner_vblock_is_alive(fsdev, &vinfo[i], cp, ncps);
335 struct nandfs_vinfo *vinfo, *vip, *vipi;
347 vip = vinfo = malloc(sizeof(*vinfo) *
388 MPASS(vinfo == vip);
413 error = nandfs_get_dat_vinfo(fsdev, vinfo, vip - vinfo);
419 nandfs_cleaner_vinfo_mark_alive(fsdev, vinfo, vip - vinfo, cpinfo,
431 for (vipi = vinfo; vipi < vip; vipi++) {
443 error = nandfs_cleaner_clean_segments(fsdev, vinfo, vip - vinfo, NULL,
454 free(vinfo, M_NANDFSTEMP);
485 struct nandfs_vinfo *vinfo, uint32_t nvinfo,
501 if (!vinfo[i].nvi_alive)
504 __func__, (uintmax_t)vinfo[i].nvi_vblocknr,
505 (uintmax_t)vinfo[i].nvi_blocknr));
506 error = nandfs_bread(nffsdev->nd_gc_node, vinfo[i].nvi_blocknr,
513 nandfs_vblk_set(bp, vinfo[i].nvi_vblocknr);
533 if (vinfo[i].nvi_alive)
535 DPRINTF(CLEAN, ("freeing vblknr: %jx\n", vinfo[i].nvi_vblocknr));
536 error = nandfs_vblock_free(nffsdev, vinfo[i].nvi_vblocknr);