Lines Matching refs:jfreeblk
711 SOFTDEP_TYPE(JFREEBLK, jfreeblk, "Journal free block");
854 static void jfreeblk_write(struct jfreeblk *, struct jseg *, uint8_t *);
1008 static struct jfreeblk *newjfreeblk(struct freeblks *, ufs_lbn_t,
3058 jfreeblk_write(jfreeblk, jseg, data)
3059 struct jfreeblk *jfreeblk;
3065 jfreeblk->jf_dep.jb_jsegdep->jd_seg = jseg;
3068 rec->jb_ino = jfreeblk->jf_ino;
3069 rec->jb_blkno = jfreeblk->jf_blkno;
3070 rec->jb_lbn = jfreeblk->jf_lbn;
3071 rec->jb_frags = jfreeblk->jf_frags;
3805 * Called when the journal write for a jfreeblk completes. The jfreeblk
4006 * Eliminate a jfreeblk for a block that does not need journaling.
4013 struct jfreeblk *jfreeblk;
4019 jfreeblk = WK_JFREEBLK(&jblkdep->jb_list);
4020 if (jfreeblk->jf_blkno == blkno)
4028 WORKITEM_FREE(jfreeblk, D_JFREEBLK);
4032 * Allocate a new jfreeblk to journal top level block pointer when truncating
4035 static struct jfreeblk *
4042 struct jfreeblk *jfreeblk;
4044 jfreeblk = malloc(sizeof(*jfreeblk), M_JFREEBLK, M_SOFTDEP_FLAGS);
4045 workitem_alloc(&jfreeblk->jf_dep.jb_list, D_JFREEBLK,
4047 jfreeblk->jf_dep.jb_jsegdep = newjsegdep(&jfreeblk->jf_dep.jb_list);
4048 jfreeblk->jf_dep.jb_freeblks = freeblks;
4049 jfreeblk->jf_ino = freeblks->fb_inum;
4050 jfreeblk->jf_lbn = lbn;
4051 jfreeblk->jf_blkno = blkno;
4052 jfreeblk->jf_frags = frags;
4053 LIST_INSERT_HEAD(&freeblks->fb_jblkdephd, &jfreeblk->jf_dep, jb_deps);
4055 return (jfreeblk);