I missed this one when fixing locking in __qdisc_destroy.
# This is a BitKeeper generated diff -Nru style patch.
#
# ChangeSet
# 2004/08/08 14:15:49+02:00 kaber@xxxxxxxxxxxxxxxxxx
# [PKT_SCHED]: Disable local bh's when grabing qdisc_tree_lock in
tc_dump_tfilter
#
# Signed-off-by: Patrick McHardy <kaber@xxxxxxxxx>
#
# net/sched/cls_api.c
# 2004/08/08 14:15:30+02:00 kaber@xxxxxxxxxxxxxxxxxx +2 -2
# [PKT_SCHED]: Disable local bh's when grabing qdisc_tree_lock in
tc_dump_tfilter
#
diff -Nru a/net/sched/cls_api.c b/net/sched/cls_api.c
--- a/net/sched/cls_api.c 2004-08-08 14:17:46 +02:00
+++ b/net/sched/cls_api.c 2004-08-08 14:17:46 +02:00
@@ -387,7 +387,7 @@
if ((dev = dev_get_by_index(tcm->tcm_ifindex)) == NULL)
return skb->len;
- read_lock(&qdisc_tree_lock);
+ read_lock_bh(&qdisc_tree_lock);
if (!tcm->tcm_parent)
q = dev->qdisc_sleeping;
else
@@ -444,7 +444,7 @@
if (cl)
cops->put(q, cl);
out:
- read_unlock(&qdisc_tree_lock);
+ read_unlock_bh(&qdisc_tree_lock);
dev_put(dev);
return skb->len;
}
|