• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-R7000-V1.0.7.12_1.2.5/components/opensource/linux/linux-2.6.36/fs/jfs/

Lines Matching defs:tblk

104 #define LOGGC_WAKEUP(tblk)	wake_up_all(&(tblk)->gcwait)
175 static int lmWriteRecord(struct jfs_log * log, struct tblock * tblk,
237 int lmLog(struct jfs_log * log, struct tblock * tblk, struct lrd * lrd,
245 jfs_info("lmLog: log:0x%p tblk:0x%p, lrd:0x%p tlck:0x%p",
246 log, tblk, lrd, tlck);
251 if (tblk == NULL)
296 if (tblk->lsn == 0) {
298 tblk->lsn = mp->lsn;
302 list_add(&tblk->synclist, &mp->synclist);
310 logdiff(difft, tblk->lsn, log);
313 tblk->lsn = mp->lsn;
316 list_move(&tblk->synclist, &mp->synclist);
326 lsn = lmWriteRecord(log, tblk, lrd, tlck);
356 lmWriteRecord(struct jfs_log * log, struct tblock * tblk, struct lrd * lrd,
512 tblk->clsn = lsn;
513 jfs_info("wr: tclsn:0x%x, beor:0x%x", tblk->clsn,
529 tblk->flag = tblkGC_QUEUE;
530 tblk->bp = log->bp;
531 tblk->pn = log->page;
532 tblk->eor = log->eor;
535 list_add_tail(&tblk->cqueue, &log->cqueue);
579 struct tblock *tblk;
592 /* get the tail tblk on commit queue */
594 tblk = NULL;
596 tblk = list_entry(log->cqueue.prev, struct tblock, cqueue);
598 /* every tblk who has COMMIT record on the current page,
600 * since tblk is queued at commit queueu at the time
602 * page becomes full (even though the tblk thread
607 /* is page bound with outstanding tail tblk ? */
608 if (tblk && tblk->pn == pn) {
609 /* mark tblk for end-of-page */
610 tblk->flag |= tblkGC_EOP;
629 /* page is not bound with outstanding tblk:
678 int lmGroupCommit(struct jfs_log * log, struct tblock * tblk)
685 if (tblk->flag & tblkGC_COMMITTED) {
686 if (tblk->flag & tblkGC_ERROR)
692 jfs_info("lmGroup Commit: tblk = 0x%p, gcrtc = %d", tblk, log->gcrtc);
694 if (tblk->xflag & COMMIT_LAZY)
695 tblk->flag |= tblkGC_LAZY;
698 (!(tblk->xflag & COMMIT_LAZY) || test_bit(log_FLUSH, &log->flag)
710 if (tblk->xflag & COMMIT_LAZY) {
720 if (tblk->flag & tblkGC_COMMITTED) {
721 if (tblk->flag & tblkGC_ERROR)
731 tblk->flag |= tblkGC_READY;
733 __SLEEP_COND(tblk->gcwait, (tblk->flag & tblkGC_COMMITTED),
737 if (tblk->flag & tblkGC_ERROR)
762 struct tblock *tblk;
771 /* get the head tblk on the commit queue */
774 list_for_each_entry(tblk, &log->cqueue, cqueue) {
775 if (tblk->pn != gcpn)
778 xtblk = tblk;
781 tblk->flag |= tblkGC_COMMIT;
783 tblk = xtblk; /* last tblk of the page */
788 bp = (struct lbuf *) tblk->bp;
791 if (tblk->flag & tblkGC_EOP) {
793 tblk->flag &= ~tblkGC_EOP;
794 tblk->flag |= tblkGC_FREE;
803 bp->l_ceor = tblk->eor; /* ? bp->l_ceor = bp->l_eor; */
827 struct tblock *tblk, *temp;
837 list_for_each_entry_safe(tblk, temp, &log->cqueue, cqueue) {
838 if (!(tblk->flag & tblkGC_COMMIT))
846 tblk->flag |= tblkGC_ERROR;
849 list_del(&tblk->cqueue);
850 tblk->flag &= ~tblkGC_QUEUE;
852 if (tblk == log->flush_tblk) {
858 jfs_info("lmPostGC: tblk = 0x%p, flag = 0x%x", tblk,
859 tblk->flag);
861 if (!(tblk->xflag & COMMIT_FORCE))
863 * Hand tblk over to lazy commit thread
865 txLazyUnlock(tblk);
868 tblk->flag |= tblkGC_COMMITTED;
870 if (tblk->flag & tblkGC_READY)
873 LOGGC_WAKEUP(tblk);
877 * (and this is the last tblk bound with the page)
879 if (tblk->flag & tblkGC_FREE)
882 * (and this is the last tblk bound with the page)
884 else if (tblk->flag & tblkGC_EOP) {
904 ((log->gcrtc > 0) || (tblk->bp->l_wqnext != NULL) ||
2289 * redrive next page without any bound tblk