Re: [PATCH] pkt_sched: sch_api: Remove qdisc_list_lock
From: Patrick McHardy <hidden>
Date: 2008-11-25 11:46:36
From: Patrick McHardy <hidden>
Date: 2008-11-25 11:46:36
Patrick McHardy wrote:
Jarek Poplawski wrote:quoted
After implementing qdisc->ops->peek() there is no more calling qdisc_tree_decrease_qlen() without rtnl_lock(), so qdisc_list_lock added by commit: f6e0b239a2657ea8cb67f0d83d0bfdbfd19a481b "pkt_sched: Fix qdisc list locking" can be removed.I might be misunderstanding something, but qdisc_tree_decrease_qlen() doesn't need rtnl_lock() but the sch_tree_lock() since it changes q.qlen.
OK I see now, rtnl_lock() was taken to protect the parent qdisc lookup. In that case it seems fine, all callers are holding both sch_tree_lock() and rtnl_lock().