Skip to content

Commit

Permalink
[ATM]: [he] don't hold the device lock when upcalling
Browse files Browse the repository at this point in the history
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: Chas Williams <chas@cmf.nrl.navy.mil>
Signed-off-by: David S. Miller <davem@davemloft.net>
  • Loading branch information
Chas Williams authored and David S. Miller committed Sep 19, 2006
1 parent 79e453d commit 7f81dc0
Showing 1 changed file with 2 additions and 0 deletions.
2 changes: 2 additions & 0 deletions drivers/atm/he.c
Original file line number Diff line number Diff line change
Expand Up @@ -1928,7 +1928,9 @@ he_service_rbrq(struct he_dev *he_dev, int group)
#ifdef notdef
ATM_SKB(skb)->vcc = vcc;
#endif
spin_unlock(&he_dev->global_lock);
vcc->push(vcc, skb);
spin_lock(&he_dev->global_lock);

atomic_inc(&vcc->stats->rx);

Expand Down

0 comments on commit 7f81dc0

Please sign in to comment.