[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <200901221145.57856.denys@visp.net.lb>
Date: Thu, 22 Jan 2009 11:45:57 +0200
From: Denys Fedoryschenko <denys@...p.net.lb>
To: Stephen Hemminger <shemminger@...tta.com>
Cc: netdev@...r.kernel.org
Subject: [PATCH] iproute2 : invalid burst/cburst calculation with hrtimers
On Thursday 22 January 2009 09:25:41 Jarek Poplawski wrote:
> On 21-01-2009 15:33, Denys Fedoryschenko wrote:
> ...
>
> > It is some "tokens" that used to refill bucket each piece of time
> > (related with get_hz and rate?)
> > Is there any place i can read about this?
>
> http://en.wikipedia.org/wiki/Token_bucket
>
> Jarek P.
> --
> To unsubscribe from this list: send the line "unsubscribe netdev" in
> the body of a message to majordomo@...r.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
Thanks a lot. Seems also Martin Devera pointed me, what can be issue.
HZ=1000000000 is way too high.
Real tests shows, that HZ=1000 more than enough with hrtimers on.
By the way possible it is triggered deadlock bug in htb, it is not a fix of this bug,
but a fix of very wrong behaviour, because of this bug
HTB will use very extensively resources.
If it's required, i can give more detailed explanation
------------->
iproute2 : invalid burst/cburst calculation with hrtimers
If hrtimers on, /proc/net/psched shows 4th variable
as 1000000000
Because burst calculated by division rate to this variable,
it will be almost always zero. As result, we will get higher system
load on low rates, and on high rates shaper will not able to process
data. It is checked and proved. Core 2 Quad was not able to
shape 200Mbps, and gave only 180-190. It is more safe to set it
to 1000HZ. If user wants, he can set custom "env" HZ variable.
Signed-off-by: Denys Fedoryschenko <denys@...p.net.lb>
---
View attachment "iproute2-htb-gethz-invalid.patch" of type "text/x-diff" (1262 bytes)
Powered by blists - more mailing lists