Commit 7f81dc00 authored by Chas Williams's avatar Chas Williams Committed by David S. Miller

[ATM]: [he] don't hold the device lock when upcalling

This can create a deadlock/lock ordering problem with other layers
that want to use the transmit (or other) path of the card at that
time.
Signed-off-by: default avatarChas Williams <chas@cmf.nrl.navy.mil>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 79e453d4
...@@ -1928,7 +1928,9 @@ he_service_rbrq(struct he_dev *he_dev, int group) ...@@ -1928,7 +1928,9 @@ he_service_rbrq(struct he_dev *he_dev, int group)
#ifdef notdef #ifdef notdef
ATM_SKB(skb)->vcc = vcc; ATM_SKB(skb)->vcc = vcc;
#endif #endif
spin_unlock(&he_dev->global_lock);
vcc->push(vcc, skb); vcc->push(vcc, skb);
spin_lock(&he_dev->global_lock);
atomic_inc(&vcc->stats->rx); atomic_inc(&vcc->stats->rx);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment