• Home
  • Raw
  • Download

Lines Matching refs:tblk

92 #define LOGGC_WAKEUP(tblk)	wake_up_all(&(tblk)->gcwait)  argument
163 static int lmWriteRecord(struct jfs_log * log, struct tblock * tblk,
225 int lmLog(struct jfs_log * log, struct tblock * tblk, struct lrd * lrd, in lmLog() argument
234 log, tblk, lrd, tlck); in lmLog()
239 if (tblk == NULL) in lmLog()
284 if (tblk->lsn == 0) { in lmLog()
286 tblk->lsn = mp->lsn; in lmLog()
290 list_add(&tblk->synclist, &mp->synclist); in lmLog()
298 logdiff(difft, tblk->lsn, log); in lmLog()
301 tblk->lsn = mp->lsn; in lmLog()
304 list_move(&tblk->synclist, &mp->synclist); in lmLog()
314 lsn = lmWriteRecord(log, tblk, lrd, tlck); in lmLog()
344 lmWriteRecord(struct jfs_log * log, struct tblock * tblk, struct lrd * lrd, in lmWriteRecord() argument
500 tblk->clsn = lsn; in lmWriteRecord()
501 jfs_info("wr: tclsn:0x%x, beor:0x%x", tblk->clsn, in lmWriteRecord()
517 tblk->flag = tblkGC_QUEUE; in lmWriteRecord()
518 tblk->bp = log->bp; in lmWriteRecord()
519 tblk->pn = log->page; in lmWriteRecord()
520 tblk->eor = log->eor; in lmWriteRecord()
523 list_add_tail(&tblk->cqueue, &log->cqueue); in lmWriteRecord()
567 struct tblock *tblk; in lmNextPage() local
582 tblk = NULL; in lmNextPage()
584 tblk = list_entry(log->cqueue.prev, struct tblock, cqueue); in lmNextPage()
596 if (tblk && tblk->pn == pn) { in lmNextPage()
598 tblk->flag |= tblkGC_EOP; in lmNextPage()
666 int lmGroupCommit(struct jfs_log * log, struct tblock * tblk) in lmGroupCommit() argument
673 if (tblk->flag & tblkGC_COMMITTED) { in lmGroupCommit()
674 if (tblk->flag & tblkGC_ERROR) in lmGroupCommit()
680 jfs_info("lmGroup Commit: tblk = 0x%p, gcrtc = %d", tblk, log->gcrtc); in lmGroupCommit()
682 if (tblk->xflag & COMMIT_LAZY) in lmGroupCommit()
683 tblk->flag |= tblkGC_LAZY; in lmGroupCommit()
686 (!(tblk->xflag & COMMIT_LAZY) || test_bit(log_FLUSH, &log->flag) in lmGroupCommit()
698 if (tblk->xflag & COMMIT_LAZY) { in lmGroupCommit()
708 if (tblk->flag & tblkGC_COMMITTED) { in lmGroupCommit()
709 if (tblk->flag & tblkGC_ERROR) in lmGroupCommit()
719 tblk->flag |= tblkGC_READY; in lmGroupCommit()
721 __SLEEP_COND(tblk->gcwait, (tblk->flag & tblkGC_COMMITTED), in lmGroupCommit()
725 if (tblk->flag & tblkGC_ERROR) in lmGroupCommit()
750 struct tblock *tblk; in lmGCwrite() local
762 list_for_each_entry(tblk, &log->cqueue, cqueue) { in lmGCwrite()
763 if (tblk->pn != gcpn) in lmGCwrite()
766 xtblk = tblk; in lmGCwrite()
769 tblk->flag |= tblkGC_COMMIT; in lmGCwrite()
771 tblk = xtblk; /* last tblk of the page */ in lmGCwrite()
776 bp = (struct lbuf *) tblk->bp; in lmGCwrite()
779 if (tblk->flag & tblkGC_EOP) { in lmGCwrite()
781 tblk->flag &= ~tblkGC_EOP; in lmGCwrite()
782 tblk->flag |= tblkGC_FREE; in lmGCwrite()
791 bp->l_ceor = tblk->eor; /* ? bp->l_ceor = bp->l_eor; */ in lmGCwrite()
815 struct tblock *tblk, *temp; in lmPostGC() local
825 list_for_each_entry_safe(tblk, temp, &log->cqueue, cqueue) { in lmPostGC()
826 if (!(tblk->flag & tblkGC_COMMIT)) in lmPostGC()
834 tblk->flag |= tblkGC_ERROR; in lmPostGC()
837 list_del(&tblk->cqueue); in lmPostGC()
838 tblk->flag &= ~tblkGC_QUEUE; in lmPostGC()
840 if (tblk == log->flush_tblk) { in lmPostGC()
846 jfs_info("lmPostGC: tblk = 0x%p, flag = 0x%x", tblk, in lmPostGC()
847 tblk->flag); in lmPostGC()
849 if (!(tblk->xflag & COMMIT_FORCE)) in lmPostGC()
853 txLazyUnlock(tblk); in lmPostGC()
856 tblk->flag |= tblkGC_COMMITTED; in lmPostGC()
858 if (tblk->flag & tblkGC_READY) in lmPostGC()
861 LOGGC_WAKEUP(tblk); in lmPostGC()
867 if (tblk->flag & tblkGC_FREE) in lmPostGC()
872 else if (tblk->flag & tblkGC_EOP) { in lmPostGC()
892 ((log->gcrtc > 0) || (tblk->bp->l_wqnext != NULL) || in lmPostGC()