[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <45FFF455.80003@trash.net>
Date: Tue, 20 Mar 2007 15:48:53 +0100
From: Patrick McHardy <kaber@...sh.net>
To: Chris Madden <chris@...lexsecurity.com>
CC: hadi@...erus.ca, netdev@...r.kernel.org
Subject: Re: Oops in filter add
Chris Madden wrote:
> Ok, I replaced ingress_lock with queue_lock in ing_filter and it died in
> the same place. Trace below (looks to be substantively the same)...
>
> If I am reading tc_ctl_tfilter correctly, we are adding our new
> tcf_proto to the end of the list, and it is getting used before the
> change function is getting executed on it. Locking the ingress_lock in
> qdisc_lock_tree ( in addition to the extant queue_lock )seems to have
> the same effect; I can get a traceback from that if its useful.
The problem is that some classifiers (like basic, fw and route)
implement empty ->init functions, although fw and route properly
deal with it in their classification functions. The ->init function
should allocate and initalize tp->root, which basic fails to do.
If you give me a few hours I'll cook up a patch for this.
-
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
Powered by blists - more mailing lists