mirror of https://gitee.com/openkylin/linux.git
Revert "pkt_sched: Add BH protection for qdisc_stab_lock."
This reverts commit 1cfa26661a
.
qdisc_destroy() runs fully under RTNL again and not from softint any
longer, so this change is no longer needed.
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
deb3abf15f
commit
f3b9605d74
|
@ -332,7 +332,7 @@ static struct qdisc_size_table *qdisc_get_stab(struct nlattr *opt)
|
|||
if (!s || tsize != s->tsize || (!tab && tsize > 0))
|
||||
return ERR_PTR(-EINVAL);
|
||||
|
||||
spin_lock_bh(&qdisc_stab_lock);
|
||||
spin_lock(&qdisc_stab_lock);
|
||||
|
||||
list_for_each_entry(stab, &qdisc_stab_list, list) {
|
||||
if (memcmp(&stab->szopts, s, sizeof(*s)))
|
||||
|
@ -340,11 +340,11 @@ static struct qdisc_size_table *qdisc_get_stab(struct nlattr *opt)
|
|||
if (tsize > 0 && memcmp(stab->data, tab, tsize * sizeof(u16)))
|
||||
continue;
|
||||
stab->refcnt++;
|
||||
spin_unlock_bh(&qdisc_stab_lock);
|
||||
spin_unlock(&qdisc_stab_lock);
|
||||
return stab;
|
||||
}
|
||||
|
||||
spin_unlock_bh(&qdisc_stab_lock);
|
||||
spin_unlock(&qdisc_stab_lock);
|
||||
|
||||
stab = kmalloc(sizeof(*stab) + tsize * sizeof(u16), GFP_KERNEL);
|
||||
if (!stab)
|
||||
|
@ -355,9 +355,9 @@ static struct qdisc_size_table *qdisc_get_stab(struct nlattr *opt)
|
|||
if (tsize > 0)
|
||||
memcpy(stab->data, tab, tsize * sizeof(u16));
|
||||
|
||||
spin_lock_bh(&qdisc_stab_lock);
|
||||
spin_lock(&qdisc_stab_lock);
|
||||
list_add_tail(&stab->list, &qdisc_stab_list);
|
||||
spin_unlock_bh(&qdisc_stab_lock);
|
||||
spin_unlock(&qdisc_stab_lock);
|
||||
|
||||
return stab;
|
||||
}
|
||||
|
@ -367,14 +367,14 @@ void qdisc_put_stab(struct qdisc_size_table *tab)
|
|||
if (!tab)
|
||||
return;
|
||||
|
||||
spin_lock_bh(&qdisc_stab_lock);
|
||||
spin_lock(&qdisc_stab_lock);
|
||||
|
||||
if (--tab->refcnt == 0) {
|
||||
list_del(&tab->list);
|
||||
kfree(tab);
|
||||
}
|
||||
|
||||
spin_unlock_bh(&qdisc_stab_lock);
|
||||
spin_unlock(&qdisc_stab_lock);
|
||||
}
|
||||
EXPORT_SYMBOL(qdisc_put_stab);
|
||||
|
||||
|
|
Loading…
Reference in New Issue