Module Name:    src
Committed By:   dholland
Date:           Sun Aug  2 18:14:16 UTC 2015

Modified Files:
        src/libexec/lfs_cleanerd: lfs_cleanerd.c
        src/sbin/dump_lfs: lfs_inode.c
        src/sbin/fsck_lfs: lfs.c pass5.c segwrite.c setup.c
        src/sbin/newfs_lfs: make_lfs.c
        src/sbin/scan_ffs: scan_ffs.c
        src/sys/ufs/lfs: lfs_accessors.h lfs_alloc.c lfs_debug.c lfs_itimes.c
            lfs_rfw.c lfs_segment.c lfs_syscalls.c lfs_vfsops.c
        src/usr.sbin/dumplfs: dumplfs.c

Log Message:
Use accessor functions for the version field of the lfs superblock.
I thought at first maybe the cases that test the version should be
rolled into the accessors, but on the whole I think the conclusion on
that is no.


To generate a diff of this commit:
cvs rdiff -u -r1.42 -r1.43 src/libexec/lfs_cleanerd/lfs_cleanerd.c
cvs rdiff -u -r1.21 -r1.22 src/sbin/dump_lfs/lfs_inode.c
cvs rdiff -u -r1.50 -r1.51 src/sbin/fsck_lfs/lfs.c
cvs rdiff -u -r1.33 -r1.34 src/sbin/fsck_lfs/pass5.c
cvs rdiff -u -r1.34 -r1.35 src/sbin/fsck_lfs/segwrite.c
cvs rdiff -u -r1.51 -r1.52 src/sbin/fsck_lfs/setup.c
cvs rdiff -u -r1.38 -r1.39 src/sbin/newfs_lfs/make_lfs.c
cvs rdiff -u -r1.29 -r1.30 src/sbin/scan_ffs/scan_ffs.c
cvs rdiff -u -r1.5 -r1.6 src/sys/ufs/lfs/lfs_accessors.h
cvs rdiff -u -r1.124 -r1.125 src/sys/ufs/lfs/lfs_alloc.c
cvs rdiff -u -r1.48 -r1.49 src/sys/ufs/lfs/lfs_debug.c
cvs rdiff -u -r1.16 -r1.17 src/sys/ufs/lfs/lfs_itimes.c
cvs rdiff -u -r1.24 -r1.25 src/sys/ufs/lfs/lfs_rfw.c
cvs rdiff -u -r1.248 -r1.249 src/sys/ufs/lfs/lfs_segment.c
cvs rdiff -u -r1.163 -r1.164 src/sys/ufs/lfs/lfs_syscalls.c
cvs rdiff -u -r1.331 -r1.332 src/sys/ufs/lfs/lfs_vfsops.c
cvs rdiff -u -r1.47 -r1.48 src/usr.sbin/dumplfs/dumplfs.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/libexec/lfs_cleanerd/lfs_cleanerd.c
diff -u src/libexec/lfs_cleanerd/lfs_cleanerd.c:1.42 src/libexec/lfs_cleanerd/lfs_cleanerd.c:1.43
--- src/libexec/lfs_cleanerd/lfs_cleanerd.c:1.42	Sun Aug  2 18:10:07 2015
+++ src/libexec/lfs_cleanerd/lfs_cleanerd.c	Sun Aug  2 18:14:16 2015
@@ -1,4 +1,4 @@
-/* $NetBSD: lfs_cleanerd.c,v 1.42 2015/08/02 18:10:07 dholland Exp $	 */
+/* $NetBSD: lfs_cleanerd.c,v 1.43 2015/08/02 18:14:16 dholland Exp $	 */
 
 /*-
  * Copyright (c) 2005 The NetBSD Foundation, Inc.
@@ -258,7 +258,7 @@ init_fs(struct clfs *fs, char *fsname)
 	free(sbuf);
 
 	/* If this is not a version 2 filesystem, complain and exit */
-	if (fs->lfs_version != 2) {
+	if (lfs_sb_getversion(fs) != 2) {
 		syslog(LOG_ERR, "%s: not a version 2 LFS", fsname);
 		return -1;
 	}

Index: src/sbin/dump_lfs/lfs_inode.c
diff -u src/sbin/dump_lfs/lfs_inode.c:1.21 src/sbin/dump_lfs/lfs_inode.c:1.22
--- src/sbin/dump_lfs/lfs_inode.c:1.21	Fri Jul 24 06:59:31 2015
+++ src/sbin/dump_lfs/lfs_inode.c	Sun Aug  2 18:14:16 2015
@@ -1,4 +1,4 @@
-/*      $NetBSD: lfs_inode.c,v 1.21 2015/07/24 06:59:31 dholland Exp $ */
+/*      $NetBSD: lfs_inode.c,v 1.22 2015/08/02 18:14:16 dholland Exp $ */
 
 /*-
  * Copyright (c) 1980, 1991, 1993, 1994
@@ -39,7 +39,7 @@ __COPYRIGHT("@(#) Copyright (c) 1980, 19
 #if 0
 static char sccsid[] = "@(#)main.c      8.6 (Berkeley) 5/1/95";
 #else
-__RCSID("$NetBSD: lfs_inode.c,v 1.21 2015/07/24 06:59:31 dholland Exp $");
+__RCSID("$NetBSD: lfs_inode.c,v 1.22 2015/08/02 18:14:16 dholland Exp $");
 #endif
 #endif /* not lint */
 
@@ -115,7 +115,7 @@ fs_read_sblock(char *superblock)
 		msg("Warning: secondary superblock at 0x%" PRIx64 " bad magic\n",
 			LFS_FSBTODB(sblock, (off_t)lfs_sb_getsboff(sblock, 1)));
 	} else {
-		if (sblock->lfs_version > 1) {
+		if (lfs_sb_getversion(sblock) > 1) {
 			if (lfs_sb_getserial(&u.lfss) < lfs_sb_getserial(sblock)) {
 				memcpy(sblock, u.tbuf, sizeof(u.tbuf));
 				sboff = lfs_fsbtob(sblock, (off_t)lfs_sb_getsboff(sblock, 1));
@@ -147,14 +147,14 @@ fs_parametrize(void)
 	spcl.c_flags = iswap32(iswap32(spcl.c_flags) | DR_NEWINODEFMT);
 
 	ufsi.ufs_dsize = LFS_FSBTODB(sblock, lfs_sb_getsize(sblock));
-	if (sblock->lfs_version == 1) 
+	if (lfs_sb_getversion(sblock) == 1) 
 		ufsi.ufs_dsize = lfs_sb_getsize(sblock) >> lfs_sb_getblktodb(sblock);
 	ufsi.ufs_bsize = lfs_sb_getbsize(sblock);
 	ufsi.ufs_bshift = lfs_sb_getbshift(sblock);
 	ufsi.ufs_fsize = lfs_sb_getfsize(sblock);
 	ufsi.ufs_frag = lfs_sb_getfrag(sblock);
 	ufsi.ufs_fsatoda = lfs_sb_getfsbtodb(sblock);
-	if (sblock->lfs_version == 1)
+	if (lfs_sb_getversion(sblock) == 1)
 		ufsi.ufs_fsatoda = 0;
 	ufsi.ufs_nindir = lfs_sb_getnindir(sblock);
 	ufsi.ufs_inopb = lfs_sb_getinopb(sblock);

Index: src/sbin/fsck_lfs/lfs.c
diff -u src/sbin/fsck_lfs/lfs.c:1.50 src/sbin/fsck_lfs/lfs.c:1.51
--- src/sbin/fsck_lfs/lfs.c:1.50	Sun Aug  2 18:10:08 2015
+++ src/sbin/fsck_lfs/lfs.c	Sun Aug  2 18:14:16 2015
@@ -1,4 +1,4 @@
-/* $NetBSD: lfs.c,v 1.50 2015/08/02 18:10:08 dholland Exp $ */
+/* $NetBSD: lfs.c,v 1.51 2015/08/02 18:14:16 dholland Exp $ */
 /*-
  * Copyright (c) 2003 The NetBSD Foundation, Inc.
  * All rights reserved.
@@ -526,7 +526,7 @@ lfs_init(int devfd, daddr_t sblkno, dadd
 	}
 
 	/* Compatibility */
-	if (fs->lfs_version < 2) {
+	if (lfs_sb_getversion(fs) < 2) {
 		lfs_sb_setsumsize(fs, LFS_V1_SUMMARY_SIZE);
 		lfs_sb_setibsize(fs, lfs_sb_getbsize(fs));
 		lfs_sb_sets0addr(fs, lfs_sb_getsboff(fs, 0));
@@ -695,11 +695,11 @@ lfs_verify(struct lfs *sb0, struct lfs *
 		      (uintmax_t) lfs_sb_getserial(sb0),
 		      (uintmax_t) lfs_sb_getserial(sb1));
 
-	if ((sb0->lfs_version == 1 &&
+	if ((lfs_sb_getversion(sb0) == 1 &&
 		lfs_sb_getotstamp(sb0) != lfs_sb_getotstamp(sb1)) ||
-	    (sb0->lfs_version > 1 &&
+	    (lfs_sb_getversion(sb0) > 1 &&
 		lfs_sb_getserial(sb0) != lfs_sb_getserial(sb1))) {
-		if (sb0->lfs_version == 1) {
+		if (lfs_sb_getversion(sb0) == 1) {
 			if (lfs_sb_getotstamp(sb0) > lfs_sb_getotstamp(sb1)) {
 				osb = sb1;
 				nsb = sb0;
@@ -756,7 +756,7 @@ check_summary(struct lfs *fs, SEGSUM *sp
 
 	/* Count the blocks. */
 	nblocks = howmany(sp->ss_ninos, LFS_INOPB(fs));
-	bc = nblocks << (fs->lfs_version > 1 ? lfs_sb_getffshift(fs) : lfs_sb_getbshift(fs));
+	bc = nblocks << (lfs_sb_getversion(fs) > 1 ? lfs_sb_getffshift(fs) : lfs_sb_getbshift(fs));
 	assert(bc >= 0);
 
 	fp = (FINFO *) (sp + 1);
@@ -926,7 +926,7 @@ extend_ifile(struct lfs *fs)
 	max = i + lfs_sb_getifpb(fs);
 	lfs_sb_subbfree(fs, lfs_btofsb(fs, lfs_sb_getbsize(fs)));
 
-	if (fs->lfs_version == 1) {
+	if (lfs_sb_getversion(fs) == 1) {
 		for (ifp_v1 = (IFILE_V1 *)bp->b_data; i < max; ++ifp_v1) {
 			ifp_v1->if_version = 1;
 			ifp_v1->if_daddr = LFS_UNUSED_DADDR;

Index: src/sbin/fsck_lfs/pass5.c
diff -u src/sbin/fsck_lfs/pass5.c:1.33 src/sbin/fsck_lfs/pass5.c:1.34
--- src/sbin/fsck_lfs/pass5.c:1.33	Sun Aug  2 18:08:12 2015
+++ src/sbin/fsck_lfs/pass5.c	Sun Aug  2 18:14:16 2015
@@ -1,4 +1,4 @@
-/* $NetBSD: pass5.c,v 1.33 2015/08/02 18:08:12 dholland Exp $	 */
+/* $NetBSD: pass5.c,v 1.34 2015/08/02 18:14:16 dholland Exp $	 */
 
 /*-
  * Copyright (c) 2000, 2003 The NetBSD Foundation, Inc.
@@ -120,7 +120,7 @@ pass5(void)
 			avail += lfs_segtod(fs, 1);
 			if (su->su_flags & SEGUSE_SUPERBLOCK)
 				avail -= lfs_btofsb(fs, LFS_SBPAD);
-			if (i == 0 && fs->lfs_version > 1 &&
+			if (i == 0 && lfs_sb_getversion(fs) > 1 &&
 			    lfs_sb_gets0addr(fs) < lfs_btofsb(fs, LFS_LABELPAD))
 				avail -= lfs_btofsb(fs, LFS_LABELPAD) -
 				    lfs_sb_gets0addr(fs);
@@ -169,7 +169,7 @@ pass5(void)
 	}
 
 	labelskew = 0;
-	if (fs->lfs_version > 1 &&
+	if (lfs_sb_getversion(fs) > 1 &&
 	    lfs_sb_gets0addr(fs) < lfs_btofsb(fs, LFS_LABELPAD))
 		labelskew = lfs_btofsb(fs, LFS_LABELPAD);
 	if (lfs_sb_getbfree(fs) > lfs_sb_getdsize(fs) - bb - labelskew ||

Index: src/sbin/fsck_lfs/segwrite.c
diff -u src/sbin/fsck_lfs/segwrite.c:1.34 src/sbin/fsck_lfs/segwrite.c:1.35
--- src/sbin/fsck_lfs/segwrite.c:1.34	Tue Jul 28 05:09:34 2015
+++ src/sbin/fsck_lfs/segwrite.c	Sun Aug  2 18:14:16 2015
@@ -1,4 +1,4 @@
-/* $NetBSD: segwrite.c,v 1.34 2015/07/28 05:09:34 dholland Exp $ */
+/* $NetBSD: segwrite.c,v 1.35 2015/08/02 18:14:16 dholland Exp $ */
 /*-
  * Copyright (c) 2003 The NetBSD Foundation, Inc.
  * All rights reserved.
@@ -635,7 +635,7 @@ lfs_initseg(struct lfs * fs)
 		}
 		brelse(bp, 0);
 		/* Segment zero could also contain the labelpad */
-		if (fs->lfs_version > 1 && sp->seg_number == 0 &&
+		if (lfs_sb_getversion(fs) > 1 && sp->seg_number == 0 &&
 		    lfs_sb_gets0addr(fs) < lfs_btofsb(fs, LFS_LABELPAD)) {
 			lfs_sb_addoffset(fs, lfs_btofsb(fs, LFS_LABELPAD) - lfs_sb_gets0addr(fs));
 			sp->seg_bytes_left -= LFS_LABELPAD - lfs_fsbtob(fs, lfs_sb_gets0addr(fs));
@@ -771,7 +771,7 @@ lfs_writeseg(struct lfs * fs, struct seg
 	ninos = (ssp->ss_ninos + LFS_INOPB(fs) - 1) / LFS_INOPB(fs);
 	sup->su_nbytes += ssp->ss_ninos * LFS_DINODE1_SIZE;
 
-	if (fs->lfs_version == 1)
+	if (lfs_sb_getversion(fs) == 1)
 		sup->su_olastmod = write_time;
 	else
 		sup->su_lastmod = write_time;
@@ -789,7 +789,7 @@ lfs_writeseg(struct lfs * fs, struct seg
 	 * block (the summary block) is skipped.  Set the create time here
 	 * so that it's guaranteed to be later than the inode mod times.
 	 */
-	if (fs->lfs_version == 1)
+	if (lfs_sb_getversion(fs) == 1)
 		el_size = sizeof(u_long);
 	else
 		el_size = sizeof(u_int32_t);
@@ -805,7 +805,7 @@ lfs_writeseg(struct lfs * fs, struct seg
 		bremfree(*bpp);
 		(*bpp)->b_flags |= B_BUSY;
 	}
-	if (fs->lfs_version == 1)
+	if (lfs_sb_getversion(fs) == 1)
 		ssp->ss_ocreate = write_time;
 	else {
 		ssp->ss_create = write_time;
@@ -999,7 +999,7 @@ lfs_writesuper(struct lfs *fs, ulfs_dadd
 	struct ubuf *bp;
 
 	/* Set timestamp of this version of the superblock */
-	if (fs->lfs_version == 1)
+	if (lfs_sb_getversion(fs) == 1)
 		lfs_sb_setotstamp(fs, write_time);
 	lfs_sb_settstamp(fs, write_time);
 

Index: src/sbin/fsck_lfs/setup.c
diff -u src/sbin/fsck_lfs/setup.c:1.51 src/sbin/fsck_lfs/setup.c:1.52
--- src/sbin/fsck_lfs/setup.c:1.51	Sun Aug  2 18:10:08 2015
+++ src/sbin/fsck_lfs/setup.c	Sun Aug  2 18:14:16 2015
@@ -1,4 +1,4 @@
-/* $NetBSD: setup.c,v 1.51 2015/08/02 18:10:08 dholland Exp $ */
+/* $NetBSD: setup.c,v 1.52 2015/08/02 18:14:16 dholland Exp $ */
 
 /*-
  * Copyright (c) 2003 The NetBSD Foundation, Inc.
@@ -272,7 +272,7 @@ setup(const char *dev)
 			}
 			fp = (FINFO *)(sp + 1);
 			bc = howmany(sp->ss_ninos, LFS_INOPB(fs)) <<
-				(fs->lfs_version > 1 ? lfs_sb_getffshift(fs) :
+				(lfs_sb_getversion(fs) > 1 ? lfs_sb_getffshift(fs) :
 						       lfs_sb_getbshift(fs));
 			for (i = 0; i < sp->ss_nfinfo; i++) {
 				bc += fp->fi_lastlength + ((fp->fi_nblocks - 1)
@@ -334,7 +334,7 @@ setup(const char *dev)
 		pwarn("lfs_frag  = %lu\n", (unsigned long) lfs_sb_getfrag(fs));
 		pwarn("lfs_inopb = %lu\n", (unsigned long) lfs_sb_getinopb(fs));
 	}
-	if (fs->lfs_version == 1)
+	if (lfs_sb_getversion(fs) == 1)
 		maxfsblock = lfs_blkstofrags(fs, lfs_sb_getsize(fs));
 	else
 		maxfsblock = lfs_sb_getsize(fs);

Index: src/sbin/newfs_lfs/make_lfs.c
diff -u src/sbin/newfs_lfs/make_lfs.c:1.38 src/sbin/newfs_lfs/make_lfs.c:1.39
--- src/sbin/newfs_lfs/make_lfs.c:1.38	Sun Aug  2 18:11:36 2015
+++ src/sbin/newfs_lfs/make_lfs.c	Sun Aug  2 18:14:16 2015
@@ -1,4 +1,4 @@
-/*	$NetBSD: make_lfs.c,v 1.38 2015/08/02 18:11:36 dholland Exp $	*/
+/*	$NetBSD: make_lfs.c,v 1.39 2015/08/02 18:14:16 dholland Exp $	*/
 
 /*-
  * Copyright (c) 2003 The NetBSD Foundation, Inc.
@@ -62,7 +62,7 @@
 #if 0
 static char sccsid[] = "@(#)lfs.c	8.5 (Berkeley) 5/24/95";
 #else
-__RCSID("$NetBSD: make_lfs.c,v 1.38 2015/08/02 18:11:36 dholland Exp $");
+__RCSID("$NetBSD: make_lfs.c,v 1.39 2015/08/02 18:14:16 dholland Exp $");
 #endif
 #endif /* not lint */
 
@@ -346,7 +346,7 @@ make_lfs(int devfd, uint secsize, struct
 
 
 	/* Set version first of all since it is used to compute other fields */
-	fs->lfs_version = version;
+	lfs_sb_setversion(fs, version);
 
 	/* If partition is not an LFS partition, warn that that is the case */
 	if (strcmp(dkw->dkw_ptype, DKW_PTYPE_LFS) != 0) {
@@ -421,7 +421,7 @@ make_lfs(int devfd, uint secsize, struct
 		lfs_sb_setnindir(fs, bsize / sizeof(int32_t));
 	}
 
-	if (fs->lfs_version == 1) {
+	if (lfs_sb_getversion(fs) == 1) {
 		lfs_sb_setsumsize(fs, LFS_V1_SUMMARY_SIZE);
 		lfs_sb_setsegshift(fs, lfs_log2(ssize));
 		if (1 << lfs_sb_getsegshift(fs) != ssize)
@@ -527,8 +527,8 @@ make_lfs(int devfd, uint secsize, struct
 	 * Now that we've determined what we're going to do, announce it
 	 * to the user.
 	 */
-        printf("Creating a version %d LFS", fs->lfs_version);
-        if (fs->lfs_version > 1)
+        printf("Creating a version %d LFS", lfs_sb_getversion(fs));
+        if (lfs_sb_getversion(fs) > 1)
                 printf(" with roll-forward ident 0x%x", lfs_sb_getident(fs));
         printf("\n");   
         fssize = (double)lfs_sb_getnseg(fs);
@@ -589,7 +589,7 @@ make_lfs(int devfd, uint secsize, struct
 		sb_addr = ((i * sb_interval) * lfs_segtod(fs, 1))
 		    + lfs_sb_getsboff(fs, 0);
 		/* Segment 0 eats the label, except for version 1 */
-		if (fs->lfs_version > 1 && lfs_sb_gets0addr(fs) < label_fsb)
+		if (lfs_sb_getversion(fs) > 1 && lfs_sb_gets0addr(fs) < label_fsb)
 			sb_addr -= label_fsb - start;
 		if (sb_addr + sizeof(struct dlfs)
 		    >= LFS_DBTOFSB(fs, dkw->dkw_size))
@@ -789,7 +789,7 @@ make_lfs(int devfd, uint secsize, struct
                         lfs_sb_addavail(fs, lfs_segtod(fs, 1));
                         if (segp->su_flags & SEGUSE_SUPERBLOCK)
                                 lfs_sb_subavail(fs, lfs_btofsb(fs, LFS_SBPAD));
-                        if (i == 0 && fs->lfs_version > 1 &&
+                        if (i == 0 && lfs_sb_getversion(fs) > 1 &&
                             lfs_sb_gets0addr(fs) < lfs_btofsb(fs, LFS_LABELPAD))
                                 lfs_sb_subavail(fs, lfs_btofsb(fs, LFS_LABELPAD) -
                                     lfs_sb_gets0addr(fs));
@@ -803,7 +803,7 @@ make_lfs(int devfd, uint secsize, struct
         lfs_sb_subavail(fs, lfs_segtod(fs, (lfs_sb_getminfreeseg(fs) - (lfs_sb_getminfreeseg(fs) / 2))));
 
         labelskew = 0;
-        if (fs->lfs_version > 1 && lfs_sb_gets0addr(fs) < lfs_btofsb(fs, LFS_LABELPAD))
+        if (lfs_sb_getversion(fs) > 1 && lfs_sb_gets0addr(fs) < lfs_btofsb(fs, LFS_LABELPAD))
                 labelskew = lfs_btofsb(fs, LFS_LABELPAD);
         lfs_sb_setbfree(fs, lfs_sb_getdsize(fs) - labelskew - (ubb + bb) / 2);
 

Index: src/sbin/scan_ffs/scan_ffs.c
diff -u src/sbin/scan_ffs/scan_ffs.c:1.29 src/sbin/scan_ffs/scan_ffs.c:1.30
--- src/sbin/scan_ffs/scan_ffs.c:1.29	Sun Aug  2 18:08:12 2015
+++ src/sbin/scan_ffs/scan_ffs.c	Sun Aug  2 18:14:16 2015
@@ -1,4 +1,4 @@
-/* $NetBSD: scan_ffs.c,v 1.29 2015/08/02 18:08:12 dholland Exp $ */
+/* $NetBSD: scan_ffs.c,v 1.30 2015/08/02 18:14:16 dholland Exp $ */
 
 /*
  * Copyright (c) 2005-2007 Juan Romero Pardines
@@ -33,7 +33,7 @@
  
 #include <sys/cdefs.h>
 #ifndef lint
-__RCSID("$NetBSD: scan_ffs.c,v 1.29 2015/08/02 18:08:12 dholland Exp $");
+__RCSID("$NetBSD: scan_ffs.c,v 1.30 2015/08/02 18:14:16 dholland Exp $");
 #endif /* not lint */
 
 #include <sys/types.h>
@@ -262,10 +262,10 @@ lfs_printpart(struct sblockinfo *sbi, in
 		(void)printf(" 4.4LFS %6d %5d %7d # %s [LFSv%d]\n",
 			lfs_sb_getfsize(sbi->lfs), lfs_sb_getbsize(sbi->lfs),
 			lfs_sb_getnseg(sbi->lfs), sbi->lfs_path, 
-			sbi->lfs->lfs_version);
+			lfs_sb_getversion(sbi->lfs));
 		break;
 	case BLOCKS:
-		(void)printf("LFSv%d", sbi->lfs->lfs_version);
+		(void)printf("LFSv%d", lfs_sb_getversion(sbi->lfs));
 		(void)printf(" sb at %" PRIu64, sbi->lfs_off + btodb(LFS_LABELPAD));
 		(void)printf(" fsid %" PRIx32, lfs_sb_getident(sbi->lfs));
 		(void)printf(" size %" PRIu64 ", last mounted on %s\n",
@@ -273,7 +273,7 @@ lfs_printpart(struct sblockinfo *sbi, in
 			lfs_sb_getfsize(sbi->lfs) / 512), sbi->lfs_path);
 		break;
 	default:
-		(void)printf("LFSv%d ", sbi->lfs->lfs_version);
+		(void)printf("LFSv%d ", lfs_sb_getversion(sbi->lfs));
 		(void)printf("at %" PRIu64, sbi->lfs_off);
 		(void)printf(" size %" PRIu64 ", last mounted on %s\n",
 			(lfs_sb_getsize(sbi->lfs) *

Index: src/sys/ufs/lfs/lfs_accessors.h
diff -u src/sys/ufs/lfs/lfs_accessors.h:1.5 src/sys/ufs/lfs/lfs_accessors.h:1.6
--- src/sys/ufs/lfs/lfs_accessors.h:1.5	Sun Aug  2 18:10:08 2015
+++ src/sys/ufs/lfs/lfs_accessors.h	Sun Aug  2 18:14:16 2015
@@ -1,4 +1,4 @@
-/*	$NetBSD: lfs_accessors.h,v 1.5 2015/08/02 18:10:08 dholland Exp $	*/
+/*	$NetBSD: lfs_accessors.h,v 1.6 2015/08/02 18:14:16 dholland Exp $	*/
 
 /*  from NetBSD: lfs.h,v 1.165 2015/07/24 06:59:32 dholland Exp  */
 /*  from NetBSD: dinode.h,v 1.22 2013/01/22 09:39:18 dholland Exp  */
@@ -244,7 +244,7 @@
 	    ((IN) / lfs_sb_getsepb(F)) + lfs_sb_getcleansz(F),		\
 	    lfs_sb_getbsize(F), 0, &(BP))) != 0)			\
 		panic("lfs: ifile read: %d", _e);			\
-	if ((F)->lfs_version == 1)					\
+	if (lfs_sb_getversion(F) == 1)					\
 		(SP) = (SEGUSE *)((SEGUSE_V1 *)(BP)->b_data +		\
 			((IN) & (lfs_sb_getsepb(F) - 1)));		\
 	else								\
@@ -278,7 +278,7 @@
 	(IN) / lfs_sb_getifpb(F) + lfs_sb_getcleansz(F) + lfs_sb_getsegtabsz(F), \
 	lfs_sb_getbsize(F), 0, &(BP))) != 0)				\
 		panic("lfs: ifile ino %d read %d", (int)(IN), _e);	\
-	if ((F)->lfs_version == 1)					\
+	if (lfs_sb_getversion(F) == 1)					\
 		(IP) = (IFILE *)((IFILE_V1 *)(BP)->b_data +		\
 				 (IN) % lfs_sb_getifpb(F));		\
 	else								\
@@ -332,7 +332,7 @@
  * Always called with the segment lock held.
  */
 #define LFS_GET_HEADFREE(FS, CIP, BP, FREEP) do {			\
-	if ((FS)->lfs_version > 1) {					\
+	if (lfs_sb_getversion(FS) > 1) {				\
 		LFS_CLEANERINFO((CIP), (FS), (BP));			\
 		lfs_sb_setfreehd(FS, (CIP)->free_head);			\
 		brelse(BP, 0);						\
@@ -342,7 +342,7 @@
 
 #define LFS_PUT_HEADFREE(FS, CIP, BP, VAL) do {				\
 	lfs_sb_setfreehd(FS, VAL);					\
-	if ((FS)->lfs_version > 1) {					\
+	if (lfs_sb_getversion(FS) > 1) {				\
 		LFS_CLEANERINFO((CIP), (FS), (BP));			\
 		(CIP)->free_head = (VAL);				\
 		LFS_BWRITE_LOG(BP);					\
@@ -371,7 +371,7 @@
  * On-disk segment summary information
  */
 
-#define SEGSUM_SIZE(fs) ((fs)->lfs_version == 1 ? sizeof(SEGSUM_V1) : sizeof(SEGSUM))
+#define SEGSUM_SIZE(fs) (lfs_sb_getversion(fs) == 1 ? sizeof(SEGSUM_V1) : sizeof(SEGSUM))
 
 /*
  * Super block.
@@ -415,7 +415,7 @@
 #define LFS_DEF_SB_ACCESSOR(t, f) LFS_DEF_SB_ACCESSOR_FULL(t, t, f)
 
 #define lfs_magic lfs_dlfs.dlfs_magic
-#define lfs_version lfs_dlfs.dlfs_version
+LFS_DEF_SB_ACCESSOR(u_int32_t, version);
 LFS_DEF_SB_ACCESSOR_FULL(u_int64_t, u_int32_t, size);
 LFS_DEF_SB_ACCESSOR(u_int32_t, ssize);
 LFS_DEF_SB_ACCESSOR_FULL(u_int64_t, u_int32_t, dsize);
@@ -579,7 +579,7 @@ lfs_btofsb(STRUCT_LFS *fs, uint64_t b)
 	    ? lfs_sb_getbsize(fs) \
 	    : (lfs_fragroundup(fs, lfs_blkoff(fs, (dp)->di_size))))
 
-#define	lfs_segsize(fs)	((fs)->lfs_version == 1 ?	     		\
+#define	lfs_segsize(fs)	(lfs_sb_getversion(fs) == 1 ?	     		\
 			   lfs_lblktosize((fs), lfs_sb_getssize(fs)) :	\
 			   lfs_sb_getssize(fs))
 /* XXX segtod produces a result in frags despite the 'd' */

Index: src/sys/ufs/lfs/lfs_alloc.c
diff -u src/sys/ufs/lfs/lfs_alloc.c:1.124 src/sys/ufs/lfs/lfs_alloc.c:1.125
--- src/sys/ufs/lfs/lfs_alloc.c:1.124	Tue Jul 28 05:09:34 2015
+++ src/sys/ufs/lfs/lfs_alloc.c	Sun Aug  2 18:14:16 2015
@@ -1,4 +1,4 @@
-/*	$NetBSD: lfs_alloc.c,v 1.124 2015/07/28 05:09:34 dholland Exp $	*/
+/*	$NetBSD: lfs_alloc.c,v 1.125 2015/08/02 18:14:16 dholland Exp $	*/
 
 /*-
  * Copyright (c) 1999, 2000, 2001, 2002, 2003, 2007 The NetBSD Foundation, Inc.
@@ -60,7 +60,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: lfs_alloc.c,v 1.124 2015/07/28 05:09:34 dholland Exp $");
+__KERNEL_RCSID(0, "$NetBSD: lfs_alloc.c,v 1.125 2015/08/02 18:14:16 dholland Exp $");
 
 #if defined(_KERNEL_OPT)
 #include "opt_quota.h"
@@ -161,7 +161,7 @@ lfs_extend_ifile(struct lfs *fs, kauth_c
 #endif /* DIAGNOSTIC */
 	xmax = i + lfs_sb_getifpb(fs);
 
-	if (fs->lfs_version == 1) {
+	if (lfs_sb_getversion(fs) == 1) {
 		for (ifp_v1 = (IFILE_V1 *)bp->b_data; i < xmax; ++ifp_v1) {
 			SET_BITMAP_FREE(fs, i);
 			ifp_v1->if_version = 1;
@@ -391,7 +391,7 @@ lfs_vfree(struct vnode *vp, ino_t ino, i
 
 	/* Drain of pending writes */
 	mutex_enter(vp->v_interlock);
-	while (fs->lfs_version > 1 && WRITEINPROG(vp)) {
+	while (lfs_sb_getversion(fs) > 1 && WRITEINPROG(vp)) {
 		cv_wait(&vp->v_cv, vp->v_interlock);
 	}
 	mutex_exit(vp->v_interlock);
@@ -447,7 +447,7 @@ lfs_vfree(struct vnode *vp, ino_t ino, i
 	old_iaddr = ifp->if_daddr;
 	ifp->if_daddr = LFS_UNUSED_DADDR;
 	++ifp->if_version;
-	if (fs->lfs_version == 1) {
+	if (lfs_sb_getversion(fs) == 1) {
 		LFS_GET_HEADFREE(fs, cip, cbp, &(ifp->if_nextfree));
 		LFS_PUT_HEADFREE(fs, cip, cbp, ino);
 		(void) LFS_BWRITE_LOG(bp); /* Ifile */

Index: src/sys/ufs/lfs/lfs_debug.c
diff -u src/sys/ufs/lfs/lfs_debug.c:1.48 src/sys/ufs/lfs/lfs_debug.c:1.49
--- src/sys/ufs/lfs/lfs_debug.c:1.48	Sun Aug  2 18:10:08 2015
+++ src/sys/ufs/lfs/lfs_debug.c	Sun Aug  2 18:14:16 2015
@@ -1,4 +1,4 @@
-/*	$NetBSD: lfs_debug.c,v 1.48 2015/08/02 18:10:08 dholland Exp $	*/
+/*	$NetBSD: lfs_debug.c,v 1.49 2015/08/02 18:14:16 dholland Exp $	*/
 
 /*-
  * Copyright (c) 1999, 2000, 2001, 2002, 2003 The NetBSD Foundation, Inc.
@@ -60,7 +60,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: lfs_debug.c,v 1.48 2015/08/02 18:10:08 dholland Exp $");
+__KERNEL_RCSID(0, "$NetBSD: lfs_debug.c,v 1.49 2015/08/02 18:14:16 dholland Exp $");
 
 #ifdef DEBUG
 
@@ -129,7 +129,7 @@ lfs_dump_super(struct lfs *lfsp)
 
 	printf("%s%x\t%s%x\t%s%ju\t%s%d\n",
 	       "magic	 ", lfsp->lfs_magic,
-	       "version	 ", lfsp->lfs_version,
+	       "version	 ", lfs_sb_getversion(lfsp),
 	       "size	 ", (uintmax_t)lfs_sb_getsize(lfsp),
 	       "ssize	 ", lfs_sb_getssize(lfsp));
 	printf("%s%ju\t%s%d\t%s%d\t%s%d\n",

Index: src/sys/ufs/lfs/lfs_itimes.c
diff -u src/sys/ufs/lfs/lfs_itimes.c:1.16 src/sys/ufs/lfs/lfs_itimes.c:1.17
--- src/sys/ufs/lfs/lfs_itimes.c:1.16	Tue Jul 28 05:09:34 2015
+++ src/sys/ufs/lfs/lfs_itimes.c	Sun Aug  2 18:14:16 2015
@@ -1,4 +1,4 @@
-/*	$NetBSD: lfs_itimes.c,v 1.16 2015/07/28 05:09:34 dholland Exp $	*/
+/*	$NetBSD: lfs_itimes.c,v 1.17 2015/08/02 18:14:16 dholland Exp $	*/
 
 /*-
  * Copyright (c) 1999, 2000, 2001, 2002, 2003 The NetBSD Foundation, Inc.
@@ -29,7 +29,7 @@
  * POSSIBILITY OF SUCH DAMAGE.
  */
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: lfs_itimes.c,v 1.16 2015/07/28 05:09:34 dholland Exp $");
+__KERNEL_RCSID(0, "$NetBSD: lfs_itimes.c,v 1.17 2015/08/02 18:14:16 dholland Exp $");
 
 #include <sys/param.h>
 #include <sys/time.h>
@@ -72,7 +72,7 @@ lfs_itimes(struct inode *ip, const struc
 #endif
 		ip->i_ffs1_atime = acc->tv_sec;
 		ip->i_ffs1_atimensec = acc->tv_nsec;
-		if (ip->i_lfs->lfs_version > 1) {
+		if (lfs_sb_getversion(ip->i_lfs) > 1) {
 			struct lfs *fs = ip->i_lfs;
 			struct buf *ibp;
 			IFILE *ifp;

Index: src/sys/ufs/lfs/lfs_rfw.c
diff -u src/sys/ufs/lfs/lfs_rfw.c:1.24 src/sys/ufs/lfs/lfs_rfw.c:1.25
--- src/sys/ufs/lfs/lfs_rfw.c:1.24	Tue Jul 28 05:09:34 2015
+++ src/sys/ufs/lfs/lfs_rfw.c	Sun Aug  2 18:14:16 2015
@@ -1,4 +1,4 @@
-/*	$NetBSD: lfs_rfw.c,v 1.24 2015/07/28 05:09:34 dholland Exp $	*/
+/*	$NetBSD: lfs_rfw.c,v 1.25 2015/08/02 18:14:16 dholland Exp $	*/
 
 /*-
  * Copyright (c) 1999, 2000, 2001, 2002, 2003 The NetBSD Foundation, Inc.
@@ -30,7 +30,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: lfs_rfw.c,v 1.24 2015/07/28 05:09:34 dholland Exp $");
+__KERNEL_RCSID(0, "$NetBSD: lfs_rfw.c,v 1.25 2015/08/02 18:14:16 dholland Exp $");
 
 #if defined(_KERNEL_OPT)
 #include "opt_quota.h"
@@ -395,7 +395,7 @@ check_segsum(struct lfs *fs, daddr_t off
 			goto err1;
 		}
 	}
-	if (fs->lfs_version > 1) {
+	if (lfs_sb_getversion(fs) > 1) {
 		if (ssp->ss_serial != nextserial) {
 			DLOG((DLOG_RF, "Unexpected serial number at 0x%" PRIx64
 			      "\n", offset));
@@ -533,7 +533,7 @@ check_segsum(struct lfs *fs, daddr_t off
 	brelse(bp, BC_AGE);
 
 	/* XXX should we update the serial number even for bad psegs? */
-	if ((flags & CHECK_UPDATE) && offset > 0 && fs->lfs_version > 1)
+	if ((flags & CHECK_UPDATE) && offset > 0 && lfs_sb_getversion(fs) > 1)
 		lfs_sb_setserial(fs, nextserial);
 	return offset;
 }
@@ -563,7 +563,7 @@ lfs_roll_forward(struct lfs *fs, struct 
 	 * monotonically increasing serial number instead of a timestamp.
 	 */
 	do_rollforward = (!(lfs_sb_getpflags(fs) & LFS_PF_CLEAN) &&
-			  lfs_do_rfw && fs->lfs_version > 1 && p != NULL);
+			  lfs_do_rfw && lfs_sb_getversion(fs) > 1 && p != NULL);
 	if (do_rollforward) {
 		u_int64_t nextserial;
 		/*

Index: src/sys/ufs/lfs/lfs_segment.c
diff -u src/sys/ufs/lfs/lfs_segment.c:1.248 src/sys/ufs/lfs/lfs_segment.c:1.249
--- src/sys/ufs/lfs/lfs_segment.c:1.248	Sun Aug  2 18:12:41 2015
+++ src/sys/ufs/lfs/lfs_segment.c	Sun Aug  2 18:14:16 2015
@@ -1,4 +1,4 @@
-/*	$NetBSD: lfs_segment.c,v 1.248 2015/08/02 18:12:41 dholland Exp $	*/
+/*	$NetBSD: lfs_segment.c,v 1.249 2015/08/02 18:14:16 dholland Exp $	*/
 
 /*-
  * Copyright (c) 1999, 2000, 2001, 2002, 2003 The NetBSD Foundation, Inc.
@@ -60,7 +60,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: lfs_segment.c,v 1.248 2015/08/02 18:12:41 dholland Exp $");
+__KERNEL_RCSID(0, "$NetBSD: lfs_segment.c,v 1.249 2015/08/02 18:14:16 dholland Exp $");
 
 #define _VFS_VNODE_PRIVATE	/* XXX: check for VI_MARKER, this has to go */
 
@@ -712,7 +712,7 @@ lfs_segwrite(struct mount *mp, int flags
 				}
 				fs->lfs_suflags[fs->lfs_activesb][sn] =
 					segusep->su_flags;
-				if (fs->lfs_version > 1)
+				if (lfs_sb_getversion(fs) > 1)
 					++segusep;
 				else
 					segusep = (SEGUSE *)
@@ -1780,7 +1780,7 @@ lfs_initseg(struct lfs *fs)
 		}
 		brelse(bp, 0);
 		/* Segment zero could also contain the labelpad */
-		if (fs->lfs_version > 1 && sp->seg_number == 0 &&
+		if (lfs_sb_getversion(fs) > 1 && sp->seg_number == 0 &&
 		    lfs_sb_gets0addr(fs) < lfs_btofsb(fs, LFS_LABELPAD)) {
 			lfs_sb_addoffset(fs,
 			    lfs_btofsb(fs, LFS_LABELPAD) - lfs_sb_gets0addr(fs));
@@ -2061,7 +2061,7 @@ lfs_writeseg(struct lfs *fs, struct segm
 	      ssp->ss_ninos));
 	sup->su_nbytes += ssp->ss_ninos * sizeof (struct ulfs1_dinode);
 	/* sup->su_nbytes += lfs_sb_getsumsize(fs); */
-	if (fs->lfs_version == 1)
+	if (lfs_sb_getversion(fs) == 1)
 		sup->su_olastmod = time_second;
 	else
 		sup->su_lastmod = time_second;
@@ -2176,7 +2176,7 @@ lfs_writeseg(struct lfs *fs, struct segm
 	 * so that it's guaranteed to be later than the inode mod times.
 	 */
 	sum = 0;
-	if (fs->lfs_version == 1)
+	if (lfs_sb_getversion(fs) == 1)
 		el_size = sizeof(u_long);
 	else
 		el_size = sizeof(u_int32_t);
@@ -2203,7 +2203,7 @@ lfs_writeseg(struct lfs *fs, struct segm
 			}
 		}
 	}
-	if (fs->lfs_version == 1)
+	if (lfs_sb_getversion(fs) == 1)
 		ssp->ss_ocreate = time_second;
 	else {
 		ssp->ss_create = time_second;
@@ -2384,7 +2384,7 @@ lfs_writesuper(struct lfs *fs, daddr_t d
 	mutex_exit(&lfs_lock);
 
 	/* Set timestamp of this version of the superblock */
-	if (fs->lfs_version == 1)
+	if (lfs_sb_getversion(fs) == 1)
 		lfs_sb_setotstamp(fs, time_second);
 	lfs_sb_settstamp(fs, time_second);
 

Index: src/sys/ufs/lfs/lfs_syscalls.c
diff -u src/sys/ufs/lfs/lfs_syscalls.c:1.163 src/sys/ufs/lfs/lfs_syscalls.c:1.164
--- src/sys/ufs/lfs/lfs_syscalls.c:1.163	Tue Jul 28 05:09:35 2015
+++ src/sys/ufs/lfs/lfs_syscalls.c	Sun Aug  2 18:14:16 2015
@@ -1,4 +1,4 @@
-/*	$NetBSD: lfs_syscalls.c,v 1.163 2015/07/28 05:09:35 dholland Exp $	*/
+/*	$NetBSD: lfs_syscalls.c,v 1.164 2015/08/02 18:14:16 dholland Exp $	*/
 
 /*-
  * Copyright (c) 1999, 2000, 2001, 2002, 2003, 2007, 2007, 2008
@@ -61,7 +61,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: lfs_syscalls.c,v 1.163 2015/07/28 05:09:35 dholland Exp $");
+__KERNEL_RCSID(0, "$NetBSD: lfs_syscalls.c,v 1.164 2015/08/02 18:14:16 dholland Exp $");
 
 #ifndef LFS
 # define LFS		/* for prototypes in syscallargs.h */
@@ -872,7 +872,7 @@ lfs_do_segclean(struct lfs *fs, unsigned
 	lfs_sb_addavail(fs, lfs_segtod(fs, 1));
 	if (sup->su_flags & SEGUSE_SUPERBLOCK)
 		lfs_sb_subavail(fs, lfs_btofsb(fs, LFS_SBPAD));
-	if (fs->lfs_version > 1 && segnum == 0 &&
+	if (lfs_sb_getversion(fs) > 1 && segnum == 0 &&
 	    lfs_sb_gets0addr(fs) < lfs_btofsb(fs, LFS_LABELPAD))
 		lfs_sb_subavail(fs, lfs_btofsb(fs, LFS_LABELPAD) - lfs_sb_gets0addr(fs));
 	mutex_enter(&lfs_lock);

Index: src/sys/ufs/lfs/lfs_vfsops.c
diff -u src/sys/ufs/lfs/lfs_vfsops.c:1.331 src/sys/ufs/lfs/lfs_vfsops.c:1.332
--- src/sys/ufs/lfs/lfs_vfsops.c:1.331	Sun Aug  2 18:10:08 2015
+++ src/sys/ufs/lfs/lfs_vfsops.c	Sun Aug  2 18:14:16 2015
@@ -1,4 +1,4 @@
-/*	$NetBSD: lfs_vfsops.c,v 1.331 2015/08/02 18:10:08 dholland Exp $	*/
+/*	$NetBSD: lfs_vfsops.c,v 1.332 2015/08/02 18:14:16 dholland Exp $	*/
 
 /*-
  * Copyright (c) 1999, 2000, 2001, 2002, 2003, 2007, 2007
@@ -61,7 +61,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: lfs_vfsops.c,v 1.331 2015/08/02 18:10:08 dholland Exp $");
+__KERNEL_RCSID(0, "$NetBSD: lfs_vfsops.c,v 1.332 2015/08/02 18:14:16 dholland Exp $");
 
 #if defined(_KERNEL_OPT)
 #include "opt_lfs.h"
@@ -953,7 +953,7 @@ lfs_mountfs(struct vnode *devvp, struct 
 	memcpy(&fs->lfs_dlfs, tdfs, sizeof(struct dlfs));
 
 	/* Compatibility */
-	if (fs->lfs_version < 2) {
+	if (lfs_sb_getversion(fs) < 2) {
 		lfs_sb_setsumsize(fs, LFS_V1_SUMMARY_SIZE);
 		lfs_sb_setibsize(fs, lfs_sb_getbsize(fs));
 		lfs_sb_sets0addr(fs, lfs_sb_getsboff(fs, 0));
@@ -1560,7 +1560,7 @@ lfs_loadvnode(struct mount *mp, struct v
 		/* XXX bounds-check this too */
 		LFS_IENTRY(ifp, fs, ino, bp);
 		daddr = ifp->if_daddr;
-		if (fs->lfs_version > 1) {
+		if (lfs_sb_getversion(fs) > 1) {
 			ts.tv_sec = ifp->if_atime_sec;
 			ts.tv_nsec = ifp->if_atime_nsec;
 		}
@@ -1592,7 +1592,7 @@ lfs_loadvnode(struct mount *mp, struct v
 	retries = 0;
 again:
 	error = bread(ump->um_devvp, LFS_FSBTODB(fs, daddr),
-		(fs->lfs_version == 1 ? lfs_sb_getbsize(fs) : lfs_sb_getibsize(fs)),
+		(lfs_sb_getversion(fs) == 1 ? lfs_sb_getbsize(fs) : lfs_sb_getibsize(fs)),
 		0, &bp);
 	if (error) {
 		lfs_deinit_vnode(ump, vp);
@@ -1651,7 +1651,7 @@ again:
 	brelse(bp, 0);
 
 out:	
-	if (fs->lfs_version > 1) {
+	if (lfs_sb_getversion(fs) > 1) {
 		ip->i_ffs1_atime = ts.tv_sec;
 		ip->i_ffs1_atimensec = ts.tv_nsec;
 	}
@@ -2280,7 +2280,7 @@ lfs_resize_fs(struct lfs *fs, int newnse
 	int i;
 
 	/* Only support v2 and up */
-	if (fs->lfs_version < 2)
+	if (lfs_sb_getversion(fs) < 2)
 		return EOPNOTSUPP;
 
 	/* If we're doing nothing, do it fast */

Index: src/usr.sbin/dumplfs/dumplfs.c
diff -u src/usr.sbin/dumplfs/dumplfs.c:1.47 src/usr.sbin/dumplfs/dumplfs.c:1.48
--- src/usr.sbin/dumplfs/dumplfs.c:1.47	Sun Aug  2 18:10:08 2015
+++ src/usr.sbin/dumplfs/dumplfs.c	Sun Aug  2 18:14:16 2015
@@ -1,4 +1,4 @@
-/*	$NetBSD: dumplfs.c,v 1.47 2015/08/02 18:10:08 dholland Exp $	*/
+/*	$NetBSD: dumplfs.c,v 1.48 2015/08/02 18:14:16 dholland Exp $	*/
 
 /*-
  * Copyright (c) 1991, 1993
@@ -40,7 +40,7 @@ __COPYRIGHT("@(#) Copyright (c) 1991, 19
 #if 0
 static char sccsid[] = "@(#)dumplfs.c	8.5 (Berkeley) 5/24/95";
 #else
-__RCSID("$NetBSD: dumplfs.c,v 1.47 2015/08/02 18:10:08 dholland Exp $");
+__RCSID("$NetBSD: dumplfs.c,v 1.48 2015/08/02 18:14:16 dholland Exp $");
 #endif
 #endif /* not lint */
 
@@ -103,7 +103,7 @@ print_suentry(int i, SEGUSE *sp, struct 
 	if (sp->su_flags & SEGUSE_SUPERBLOCK)
 		flags[2] = 'S';
 
-	t = (fs->lfs_version == 1 ? sp->su_olastmod : sp->su_lastmod);
+	t = (lfs_sb_getversion(fs) == 1 ? sp->su_olastmod : sp->su_lastmod);
 
 	printf("%d\t%s\t%d\t%d\t%d\t%s", i, flags,
 		sp->su_nbytes, sp->su_ninos, sp->su_nsums,
@@ -189,7 +189,7 @@ main(int argc, char **argv)
 		memcpy(&(lfs_sb1.lfs_dlfs), sbuf, sizeof(struct dlfs));
 
 		/* If that wasn't the real first sb, get the real first sb */
-		if (lfs_sb1.lfs_version > 1 &&
+		if (lfs_sb_getversion(&lfs_sb1) > 1 &&
 		    lfs_sb_getsboff(&lfs_sb1, 0) > lfs_btofsb(&lfs_sb1, LFS_LABELPAD))
 			get(fd, lfs_fsbtob(&lfs_sb1, lfs_sb_getsboff(&lfs_sb1, 0)),
 			    &(lfs_sb1.lfs_dlfs), sizeof(struct dlfs));
@@ -204,7 +204,7 @@ main(int argc, char **argv)
 		memcpy(&(lfs_sb2.lfs_dlfs), sbuf, sizeof(struct dlfs));
 	
 		lfs_master = &lfs_sb1;
-		if (lfs_sb1.lfs_version > 1) {
+		if (lfs_sb_getversion(&lfs_sb1) > 1) {
 			if (lfs_sb_getserial(&lfs_sb1) > lfs_sb_getserial(&lfs_sb2)) {
 				lfs_master = &lfs_sb2;
 				sbdaddr = lfs_sb_getsboff(&lfs_sb1, 1);
@@ -227,7 +227,7 @@ main(int argc, char **argv)
 	free(sbuf);
 
 	/* Compatibility */
-	if (lfs_master->lfs_version == 1) {
+	if (lfs_sb_getversion(lfs_master) == 1) {
 		lfs_sb_setsumsize(lfs_master, LFS_V1_SUMMARY_SIZE);
 		lfs_sb_setibsize(lfs_master, lfs_sb_getbsize(lfs_master));
 		lfs_sb_sets0addr(lfs_master, lfs_sb_getsboff(lfs_master, 0));
@@ -409,7 +409,7 @@ dump_ipage_ifile(struct lfs *lfsp, int i
 	char *ip;
 	int cnt, max, entsize;
 
-	if (lfsp->lfs_version == 1) 
+	if (lfs_sb_getversion(lfsp) == 1) 
 		entsize = sizeof(IFILE_V1);
 	else 
 		entsize = sizeof(IFILE);
@@ -439,7 +439,7 @@ dump_ipage_segusage(struct lfs *lfsp, in
 					break;
 				}
 		}
-		if (lfsp->lfs_version > 1)
+		if (lfs_sb_getversion(lfsp) > 1)
 			++sp;
 		else
 			sp = (SEGUSE *)((SEGUSE_V1 *)sp + 1);
@@ -508,7 +508,7 @@ dump_sum(int fd, struct lfs *lfsp, SEGSU
 				     (long long)addr);
 		return -1;
 	}
-	if (lfsp->lfs_version > 1 && sp->ss_ident != lfs_sb_getident(lfsp)) {
+	if (lfs_sb_getversion(lfsp) > 1 && sp->ss_ident != lfs_sb_getident(lfsp)) {
 		(void)printf("dumplfs: %s %d address 0x%llx\n",
 	                     "summary from a former life; segment", segnum,
 			     (long long)addr);
@@ -526,7 +526,7 @@ dump_sum(int fd, struct lfs *lfsp, SEGSU
 			     (sp->ss_flags & SS_RFW)  ? 'R' : '-',
 		"sumsum   ", sp->ss_sumsum,
 		"datasum  ", sp->ss_datasum );
-	if (lfsp->lfs_version == 1) {
+	if (lfs_sb_getversion(lfsp) == 1) {
 		t = sp->ss_ocreate;
 		(void)printf("\tcreate   %s\n", ctime(&t));
 	} else {
@@ -561,7 +561,7 @@ dump_sum(int fd, struct lfs *lfsp, SEGSU
 
 	printf("\n");
 
-	if (lfsp->lfs_version == 1)
+	if (lfs_sb_getversion(lfsp) == 1)
 		fp = (FINFO *)((SEGSUM_V1 *)sp + 1);
 	else
 		fp = (FINFO *)(sp + 1);
@@ -596,7 +596,7 @@ dump_sum(int fd, struct lfs *lfsp, SEGSU
 	idp = (int32_t *)sp;
 	idp += lfs_sb_getsumsize(lfsp) / sizeof(int32_t);
 	--idp;
-	if (lfsp->lfs_version == 1) {
+	if (lfs_sb_getversion(lfsp) == 1) {
 		fp = (FINFO *)((SEGSUM_V1 *)sp + 1);
 		el_size = sizeof(unsigned long);
 	} else {
@@ -661,7 +661,7 @@ dump_segment(int fd, int segnum, daddr_t
 	sum_offset = fsbtobyte(lfsp, addr);
 	sumblock = malloc(lfs_sb_getsumsize(lfsp));
 
-	if (lfsp->lfs_version > 1 && segnum == 0) {
+	if (lfs_sb_getversion(lfsp) > 1 && segnum == 0) {
 		if (lfs_fsbtob(lfsp, lfs_sb_gets0addr(lfsp)) < LFS_LABELPAD) {
 			/* First segment eats the disklabel */
 			sum_offset += lfs_fragroundup(lfsp, LFS_LABELPAD) -
@@ -677,7 +677,7 @@ dump_segment(int fd, int segnum, daddr_t
 	do {
 		get(fd, sum_offset, sumblock, lfs_sb_getsumsize(lfsp));
 		sump = (SEGSUM *)sumblock;
-		if ((lfsp->lfs_version > 1 &&
+		if ((lfs_sb_getversion(lfsp) > 1 &&
 		     sump->ss_ident != lfs_sb_getident(lfsp)) ||
 		    sump->ss_sumsum != cksum (&sump->ss_datasum, 
 			      lfs_sb_getsumsize(lfsp) - sizeof(sump->ss_sumsum))) {
@@ -690,7 +690,7 @@ dump_segment(int fd, int segnum, daddr_t
 					    sizeof(struct dlfs));
 					dump_super(&lfs_sb);
 				}
-				if (lfsp->lfs_version > 1)
+				if (lfs_sb_getversion(lfsp) > 1)
 					sum_offset += lfs_fragroundup(lfsp, LFS_SBPAD);
 				else
 					sum_offset += LFS_SBPAD;
@@ -728,7 +728,7 @@ dump_super(struct lfs *lfsp)
 
  	(void)printf("    %s0x%-8x  %s0x%-8x  %s%-10ju\n",
  		     "magic    ", lfsp->lfs_magic,
- 		     "version  ", lfsp->lfs_version,
+ 		     "version  ", lfs_sb_getversion(lfsp),
  		     "size     ", (uintmax_t)lfs_sb_getsize(lfsp));
  	(void)printf("    %s%-10d  %s%-10ju  %s%-10d\n",
  		     "ssize    ", lfs_sb_getssize(lfsp),
@@ -823,7 +823,7 @@ dump_cleaner_info(struct lfs *lfsp, void
 	CLEANERINFO *cip;
 
 	cip = (CLEANERINFO *)ipage;
-	if (lfsp->lfs_version > 1) {
+	if (lfs_sb_getversion(lfsp) > 1) {
 		(void)printf("free_head %d\n", cip->free_head);
 		(void)printf("free_tail %d\n", cip->free_tail);
 	}

Reply via email to