svn commit: r243147 - head/usr.bin/fetch
Florian Smeets
flo at smeets.im
Sun Dec 9 19:53:57 UTC 2012
On 09.12.12 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);
>
That looks much better.
68% of 146 MB 556 kBps 01m40s
Thanks!
Florian
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 163 bytes
Desc: OpenPGP digital signature
URL: <http://lists.freebsd.org/pipermail/svn-src-all/attachments/20121209/b61bd126/attachment.sig>
More information about the svn-src-all
mailing list