Lines Matching defs:osb
591 try_verify(struct lfs *osb, struct uvnode *devvp, daddr_t goal, int debug)
603 daddr = lfs_sb_getoffset(osb);
605 serial = lfs_sb_getserial(osb);
610 if (lfs_sntod(osb, lfs_dtosn(osb, daddr)) == daddr) {
611 if (daddr == lfs_sb_gets0addr(osb))
612 daddr += lfs_btofsb(osb, LFS_LABELPAD);
615 if (lfs_sb_getsboff(osb, i) < daddr)
617 if (lfs_sb_getsboff(osb, i) == daddr)
618 daddr += lfs_btofsb(osb, LFS_SBPAD);
623 bread(devvp, LFS_FSBTODB(osb, daddr), lfs_sb_getsumsize(osb),
630 if (lfs_ss_getmagic(osb, sp) != SS_MAGIC ||
631 lfs_ss_getident(osb, sp) != lfs_sb_getident(osb) ||
632 lfs_ss_getserial(osb, sp) < serial || /* XXX strengthen this */
633 lfs_ss_getsumsum(osb, sp) !=
634 cksum((char *)sp + lfs_ss_getsumstart(osb),
635 lfs_sb_getsumsize(osb) - lfs_ss_getsumstart(osb))) {
638 if (lfs_ss_getmagic(osb, sp) != SS_MAGIC)
642 else if (lfs_ss_getident(osb, sp) != lfs_sb_getident(osb))
646 (uintmax_t)lfs_ss_getident(osb, sp),
647 (uintmax_t)lfs_sb_getident(osb));
648 else if (lfs_ss_getserial(osb, sp) >= serial)
652 (int)lfs_ss_getserial(osb, sp), (int)serial);
660 if (debug && lfs_ss_getserial(osb, sp) != serial)
662 (int)serial, (int)lfs_ss_getserial(osb, sp));
664 bc = check_summary(osb, sp, daddr, debug, devvp, NULL);
671 (int)lfs_ss_getserial(osb, sp));
674 daddr += lfs_btofsb(osb, lfs_sb_getsumsize(osb) + bc);
675 if (lfs_dtosn(osb, odaddr) != lfs_dtosn(osb, daddr) ||
676 lfs_dtosn(osb, daddr) != lfs_dtosn(osb, daddr +
677 lfs_btofsb(osb, lfs_sb_getsumsize(osb) + lfs_sb_getbsize(osb)) - 1)) {
678 daddr = lfs_ss_getnext(osb, sp);
688 if (lfs_ss_getflags(osb, sp) & (SS_CLEAN | SS_RFW))
690 if (hitclean == 0 && (lfs_ss_getflags(osb, sp) & SS_CONT) == 0)
707 struct lfs *osb, *nsb;
715 osb = NULL;
727 osb = sb1;
730 osb = sb0;
735 osb = sb1;
738 osb = sb0;
746 daddr = try_verify(osb, devvp, lfs_sb_getoffset(nsb), debug);
752 (intmax_t)(lfs_sb_gettstamp(nsb) - lfs_sb_gettstamp(osb)));
755 pwarn("** Newer checkpoint invalid; lost %jd seconds of data\n", (intmax_t)(lfs_sb_gettstamp(nsb) - lfs_sb_gettstamp(osb)));
757 return (daddr == lfs_sb_getoffset(nsb) ? nsb : osb);
760 return osb;