NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: bin/55834: dump(8) stops reporting progress after 2 TB of data



The following reply was made to PR bin/55834; it has been noted by GNATS.

From: Robert Elz <kre%munnari.OZ.AU@localhost>
To: bernd.sieker%posteo.net@localhost, gnats-bugs%netbsd.org@localhost
Cc: 
Subject: Re: bin/55834: dump(8) stops reporting progress after 2 TB of data
Date: Tue, 01 Dec 2020 16:26:23 +0700

 Can you try the following patch to src/sbin/dump ?
 
 I think it is likely to apply fairly cleanly to any (moderately recent)
 source tree - but the sole change is to alter the type of the
 blockswritten variable from int to u_int64_t.
 
 A version of NetBSD old enough might be missing the "extern" in dump.h,
 and the variable declaration in main.c entirely, that's OK, just
 change the data type from int to u_int64_t  (it should be the same as the
 "tapesize" variable).
 
 If this works for you I'll commit the change to the tree, and request pullups.
 
 kre
 
 Index: dump.h
 ===================================================================
 RCS file: /cvsroot/src/sbin/dump/dump.h,v
 retrieving revision 1.58
 diff -u -r1.58 dump.h
 --- dump.h	5 Apr 2020 15:25:39 -0000	1.58
 +++ dump.h	1 Dec 2020 09:21:18 -0000
 @@ -134,7 +134,7 @@
  extern int	density;	/* density in 0.1" units */
  extern int	notify;		/* notify operator flag */
  extern int	timestamp;	/* timestamp messages */
 -extern int	blockswritten;	/* number of blocks written on current tape */
 +extern u_int64_t	blockswritten;	/* blocks written on current tape */
  extern int	tapeno;		/* current tape number */
  extern int	is_ufs2;
  
 Index: main.c
 ===================================================================
 RCS file: /cvsroot/src/sbin/dump/main.c,v
 retrieving revision 1.77
 diff -u -r1.77 main.c
 --- main.c	5 Apr 2020 15:25:39 -0000	1.77
 +++ main.c	1 Dec 2020 09:21:19 -0000
 @@ -108,7 +108,7 @@
  
  int	timestamp;		/* print message timestamps */
  int	notify;			/* notify operator flag */
 -int	blockswritten;		/* number of blocks written on current tape */
 +u_int64_t	blockswritten;	/* number of blocks written on current tape */
  int	tapeno;			/* current tape number */
  int	density;		/* density in bytes/0.1" */
  int	ntrec = NTREC;		/* # tape blocks in each tape record */
 
 


Home | Main Index | Thread Index | Old Index