Thread (209 messages) 209 messages, 10 authors, 2008-09-24

Re: [PATCH] pkt_sched: Destroy gen estimators under rtnl_lock().

From: Jarek Poplawski <hidden>
Date: 2008-08-21 10:18:37

On Thu, Aug 21, 2008 at 10:11:45AM +0000, Jarek Poplawski wrote:
On Thu, Aug 21, 2008 at 03:05:23AM -0700, David Miller wrote:
quoted
From: Jarek Poplawski <redacted>
Date: Thu, 21 Aug 2008 10:01:55 +0000
quoted
If we do this with child qdisc from qdisc_graft() it's without
deactivation. The rest of the tree can be dequeued in the meantime
and call qdisc_tree_decrease_qlen() (like hfsc, tbf, netem), which
uses qdisc_lookup() to access this list. We list_del() under rtnl
lock only, they lookup under sch_tree_lock(). Is it a bit unsafe
or I miss something?
They hold RTNL as well.

Remember, sch_tree_lock() uses qdisc_root_lock() which as I've
told you at least twice now asserts that RTNL is held :-)
Actually, I've called it wrong, they hold qdisc root lock, but they
certainly can't have rtnl_lock() at the moment!
I mean here: hfsc_dequeue(), netem_dequeue() and tbf_dequeue().

Jarek P.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help