Module Name:    src
Committed By:   snj
Date:           Tue Mar  8 10:05:43 UTC 2016

Modified Files:
        src/sbin/dump [netbsd-6]: main.c tape.c

Log Message:
Pull up following revision(s) (requested by bouyer in ticket #1332):
        sbin/dump/main.c: revision 1.73
        sbin/dump/tape.c: revision 1.54
Consistently use iswap64() and 64bit intermediate variable, as well as
64bit formats for c_tapea. Fixes tape useage report for large filesystems.


To generate a diff of this commit:
cvs rdiff -u -r1.66.8.1 -r1.66.8.2 src/sbin/dump/main.c
cvs rdiff -u -r1.50 -r1.50.4.1 src/sbin/dump/tape.c

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

Modified files:

Index: src/sbin/dump/main.c
diff -u src/sbin/dump/main.c:1.66.8.1 src/sbin/dump/main.c:1.66.8.2
--- src/sbin/dump/main.c:1.66.8.1	Tue Mar  8 10:03:57 2016
+++ src/sbin/dump/main.c	Tue Mar  8 10:05:43 2016
@@ -1,4 +1,4 @@
-/*	$NetBSD: main.c,v 1.66.8.1 2016/03/08 10:03:57 snj Exp $	*/
+/*	$NetBSD: main.c,v 1.66.8.2 2016/03/08 10:05:43 snj 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: main.c,v 1.66.8.1 2016/03/08 10:03:57 snj Exp $");
+__RCSID("$NetBSD: main.c,v 1.66.8.2 2016/03/08 10:05:43 snj Exp $");
 #endif
 #endif /* not lint */
 
@@ -633,10 +633,10 @@ main(int argc, char *argv[])
 	for (i = 0; i < ntrec; i++)
 		writeheader(maxino - 1);
 	if (pipeout)
-		msg("%d tape blocks\n",iswap32(spcl.c_tapea));
+		msg("%lld tape blocks\n",(long long)iswap64(spcl.c_tapea));
 	else
-		msg("%d tape blocks on %d volume%s\n",
-		    iswap32(spcl.c_tapea), iswap32(spcl.c_volume),
+		msg("%lld tape blocks on %d volume%s\n",
+		    (long long)iswap64(spcl.c_tapea), iswap32(spcl.c_volume),
 		    (iswap32(spcl.c_volume) == 1) ? "" : "s");
 	tnow = do_stats();
 	date = iswap32(spcl.c_date);

Index: src/sbin/dump/tape.c
diff -u src/sbin/dump/tape.c:1.50 src/sbin/dump/tape.c:1.50.4.1
--- src/sbin/dump/tape.c:1.50	Fri Sep 16 16:13:17 2011
+++ src/sbin/dump/tape.c	Tue Mar  8 10:05:43 2016
@@ -1,4 +1,4 @@
-/*	$NetBSD: tape.c,v 1.50 2011/09/16 16:13:17 plunky Exp $	*/
+/*	$NetBSD: tape.c,v 1.50.4.1 2016/03/08 10:05:43 snj Exp $	*/
 
 /*-
  * Copyright (c) 1980, 1991, 1993
@@ -34,7 +34,7 @@
 #if 0
 static char sccsid[] = "@(#)tape.c	8.4 (Berkeley) 5/1/95";
 #else
-__RCSID("$NetBSD: tape.c,v 1.50 2011/09/16 16:13:17 plunky Exp $");
+__RCSID("$NetBSD: tape.c,v 1.50.4.1 2016/03/08 10:05:43 snj Exp $");
 #endif
 #endif /* not lint */
 
@@ -336,7 +336,7 @@ flushtape(void)
 			if (spcl.c_addr[i] != 0)
 				blks++;
 	}
-	slp->count = lastspclrec + blks + 1 - iswap32(spcl.c_tapea);
+	slp->count = lastspclrec + blks + 1 - iswap64(spcl.c_tapea);
 	slp->tapea = iswap64(spcl.c_tapea);
 	slp->firstrec = lastfirstrec + ntrec;
 	slp->inode = curino;
@@ -460,7 +460,8 @@ rollforward(void)
 {
 	struct req *p, *q, *prev;
 	struct slave *tslp;
-	int i, size, savedtapea, got;
+	int i, size, got;
+	int64_t savedtapea;
 	union u_spcl *ntb, *otb;
 	tslp = &slaves[SLAVES];
 	ntb = (union u_spcl *)tslp->tblock[1];
@@ -501,10 +502,10 @@ rollforward(void)
 			q->count = 1;
 			trecno = 0;
 			nextblock = tslp->tblock;
-			savedtapea = iswap32(spcl.c_tapea);
-			spcl.c_tapea = iswap32(slp->tapea);
+			savedtapea = iswap64(spcl.c_tapea);
+			spcl.c_tapea = iswap64(slp->tapea);
 			startnewtape(0);
-			spcl.c_tapea = iswap32(savedtapea);
+			spcl.c_tapea = iswap64(savedtapea);
 			lastspclrec = savedtapea - 1;
 		}
 		size = (char *)ntb - (char *)q;
@@ -582,7 +583,7 @@ startnewtape(int top)
 
 	interrupt_save = signal(SIGINT, SIG_IGN);
 	parentpid = getpid();
-	tapea_volume = iswap32(spcl.c_tapea);
+	tapea_volume = iswap64(spcl.c_tapea);
 	(void)time(&tstart_volume);
 
 restore_check_point:

Reply via email to