From: Jarek Poplawski <jarkao2@gmail.com>
To: Denys Fedoryshchenko <denys@visp.net.lb>
Cc: netdev@vger.kernel.org
Subject: Re: thousands of classes, e1000 TX unit hang
Date: Tue, 5 Aug 2008 12:23:40 +0000 [thread overview]
Message-ID: <20080805122340.GB6541@ff.dom.local> (raw)
In-Reply-To: <200808051413.58795.denys@visp.net.lb>
On Tue, Aug 05, 2008 at 02:13:58PM +0300, Denys Fedoryshchenko wrote:
> On Tuesday 05 August 2008, Jarek Poplawski wrote:
> > On 05-08-2008 12:05, Denys Fedoryshchenko wrote:
> > > I found, that packetloss happening when i am deleting/adding classes.
> > > I attach result of oprofile as file.
> >
> > ...
> >
> > Deleting of estimators (gen_kill_estimator) isn't optimized for
> > a large number of them, and it's a known issue. Adding of classes
> > shouldn't be such a problem, but maybe you could try to do this
> > before adding filters directing to those classes.
> >
> > Since you can control rate with htb, I'm not sure you really need
> > policing: at least you could try if removing this changes anything.
> > And I'm not sure: do these tx hangs happen only when classes are
> > added/deleted or otherwise too?
> >
> > Jarek P.
>
> Policer is creating burst for me.
> For example first 2Mbyte(+rate*time if need more precision) will pass on high
> speed (1Mbit), then if flow is still using maximum bandwidth will be
> throttled to rate of HTB. When i tried to play with cburst/burst values in
> HTB i was not able to archieve same results. I can do same with TBF and his
> peakrate/burst, but not with HTB.
Very interesting. Anyway tbf doesn't use gen estimators, so you could
test if it makes big difference for you.
>
> It happens when root qdisc deleted(which holds around 130 child classes).
> Probably gen_kill_estimator taking all resources while i am deleting root
> class.
> I did some test, on machine with 150 ppp interfaces (Pentium 4 3.2 Ghz),
> just by deleting root qdisc and i got huge packetloss. When i am just adding
> classes - there is no significant packetloss.
> Probably it is not right thing, when i am deleting qdisc on ppp - causing
> packetloss on whole system? Is it possible to workaround, till
> gen_kill_estimator will be rewritten?
>
> But sure i can try to avoid "mass deleting" classes, but i think many people
> will hit this bug, especially newbies, who implement "many class" setup.
Actually, gen_kill_estimator was rewritten already, but for some
reason it wasn't merged. Maybe there isn't so much users with such a
number of classes or they don't delete them, anyway this subject isn't
reported often to the list (I remember once). Some workaround could be
probably deleting individual classes (and filters) to give away a lock
and soft interrupts for a while), before deleting the root, but I
didn't test this. BTW, you are using quite long queues (3000), so there
would be interesting to make them less and check if doesn't add to the
problem (with retransmits).
Jarek P.
next prev parent reply other threads:[~2008-08-05 12:18 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-08-05 7:47 thousands of classes, e1000 TX unit hang Denys Fedoryshchenko
2008-08-05 8:06 ` Denys Fedoryshchenko
2008-08-05 10:05 ` Denys Fedoryshchenko
2008-08-05 11:04 ` Jarek Poplawski
2008-08-05 11:13 ` Denys Fedoryshchenko
2008-08-05 12:23 ` Jarek Poplawski [this message]
2008-08-05 13:02 ` Denys Fedoryshchenko
2008-08-05 16:41 ` Jarek Poplawski
2008-08-05 16:48 ` Denys Fedoryshchenko
2008-08-05 21:14 ` Jarek Poplawski
2008-08-05 14:07 ` Denys Fedoryshchenko
2008-08-05 16:48 ` Jarek Poplawski
2008-08-05 17:18 ` Denys Fedoryshchenko
2008-08-06 1:13 ` Brandeburg, Jesse
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20080805122340.GB6541@ff.dom.local \
--to=jarkao2@gmail.com \
--cc=denys@visp.net.lb \
--cc=netdev@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).