On 09.12.2012 20:01, Mateusz Guzik wrote:
On Sun, Dec 09, 2012 at 07:42:02PM +0100, Florian Smeets wrote:
On 09.12.12 19:27, Mateusz Guzik wrote:
On Sun, Dec 09, 2012 at 07:06:22PM +0100, Florian Smeets wrote:
On 16.11.12 13:05, Andre Oppermann wrote:
Author: andre
Date: Fri Nov 16 12:05:10 2012
New Revision: 243147
URL: http://svnweb.freebsd.org/changeset/base/243147

Log:
   Change fetch(1) to:

   o Report the instantaneous bandwidth instead of an average since the
     beginning of the download.

   o At the finish of the download report the average bandwidth and also
     the total time it took instead of 00m00s.


Andre,

it looks like this change breaks the bandwidth calculation when using -r

52% of  146 MB -25199509  Bps 03m28s

Going back to r243146 fixes it.


Try this:
diff --git a/usr.bin/fetch/fetch.c b/usr.bin/fetch/fetch.c
index 025fcdc..e723d40 100644
--- a/usr.bin/fetch/fetch.c
+++ b/usr.bin/fetch/fetch.c
@@ -243,7 +243,7 @@ stat_start(struct xferstat *xs, const char *name, off_t 
size, off_t of
         gettimeofday(&xs->start, NULL);
         xs->last.tv_sec = xs->last.tv_usec = 0;
         xs->size = size;
-       xs->offset = offset;
+       xs->offset = 0;
         xs->rcvd = offset;
         xs->lastrcvd = offset;
         if (v_tty && v_level > 0)


That way the bandwidth calculation looks OK but now it counts the time
since starting to resume the download and not the time left :)

63% of  146 MB 7069 kBps 00m07s


Oops.. revert that and try this instead:
diff --git a/usr.bin/fetch/fetch.c b/usr.bin/fetch/fetch.c
index 025fcdc..d3e9b21 100644
--- a/usr.bin/fetch/fetch.c
+++ b/usr.bin/fetch/fetch.c
@@ -183,7 +183,7 @@ stat_bps(struct xferstat *xs)
         if (delta == 0.0) {
                 snprintf(str, sizeof str, "?? Bps");
         } else {
-               bps = (xs->rcvd - xs->lastrcvd - xs->offset) / delta;
+               bps = (xs->rcvd - xs->lastrcvd) / delta;
                 snprintf(str, sizeof str, "%sps", stat_bytes((off_t)bps));
         }
         return (str);

Thank you for this patch.  Committed as r244058.

--
Andre

_______________________________________________
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to