netdev
[Top] [All Lists]

Re: PROBLEM: IProute hangs after running traffic shaping scripts

To: Patrick McHardy <kaber@xxxxxxxxx>
Subject: Re: PROBLEM: IProute hangs after running traffic shaping scripts
From: Szymon Miotk <spam@xxxxxxxxxxxxx>
Date: Wed, 10 Nov 2004 13:08:14 +0100
Cc: Thomas Graf <tgraf@xxxxxxx>, netdev@xxxxxxxxxxx, davem@xxxxxxxxxxxxx
In-reply-to: <418FCD0A.4040202@xxxxxxxxx>
Organization: Crocom Computer Systems s.c.
References: <418B4C7C.8000402@xxxxxxxxxxxxx> <418EA032.7050507@xxxxxxxxx> <418ECE85.9090203@xxxxxxxxx> <20041108135431.GE31969@xxxxxxxxxxxxxx> <418F9AD0.1040701@xxxxxxxxx> <20041108183300.GF31969@xxxxxxxxxxxxxx> <418FCD0A.4040202@xxxxxxxxx>
Sender: netdev-bounce@xxxxxxxxxxx
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.3) Gecko/20040922
Patrick McHardy wrote:
Thomas Graf wrote:

* Patrick McHardy <418F9AD0.1040701@xxxxxxxxx> 2004-11-08 17:12
There is some optimization possible, I will do this for the final
patch. But I don't understand the problem you refer to, can you
please explain ?


I don't have the time to verify this at the moment but:

1) qdisc_destroy unlinking all the lists
2) RTM_NEWQDISC creating a new qdisc with the same major classid as the old one
  which will suceed since the old one cannot be found anymore.
3) rcu callback __qdisc_destroy -> qdisc_destroy looking through qdisc_list again and then deleting the new entries because their major classid matches.

I might be missing something though.

You're right, thanks. The optimization already fixed this, but I
wasn't aware of the bug :) New patch attached.

I've tested the new kernel (2.6.10-rc1_bk17) with this patch.
It performed well on test system (reloading my traffic shaping configuration for 100 times). Now it forks for some 22 hours on production system, under normal load (~20 Mbit, 500 clients at a time, 15000 entires in route table) and it performs well.

Thanks a lot for your help, it really saved me away from troubles.

Szymon Miotk


<Prev in Thread] Current Thread [Next in Thread>