diff options
author | Ralf Baechle <ralf@linux-mips.org> | 2000-02-24 00:12:35 +0000 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 2000-02-24 00:12:35 +0000 |
commit | 482368b1a8e45430672c58c9a42e7d2004367126 (patch) | |
tree | ce2a1a567d4d62dee7c2e71a46a99cf72cf1d606 /net/atm | |
parent | e4d0251c6f56ab2e191afb70f80f382793e23f74 (diff) |
Merge with 2.3.47. Guys, this is buggy as shit. You've been warned.
Diffstat (limited to 'net/atm')
-rw-r--r-- | net/atm/clip.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/net/atm/clip.c b/net/atm/clip.c index f7e008dd1..43cf3d9a2 100644 --- a/net/atm/clip.c +++ b/net/atm/clip.c @@ -223,10 +223,8 @@ static void clip_pop(struct atm_vcc *vcc,struct sk_buff *skb) DPRINTK("clip_pop(vcc %p)\n",vcc); CLIP_VCC(vcc)->old_pop(vcc,skb); /* skb->dev == NULL in outbound ARP packets */ - if (atm_may_send(vcc,0) && skb->dev) { - skb->dev->tbusy = 0; - mark_bh(NET_BH); - } + if (atm_may_send(vcc,0) && skb->dev) + netif_wake_queue(skb->dev); } @@ -403,7 +401,8 @@ return 0; ((u16 *) here)[3] = skb->protocol; } atomic_add(skb->truesize,&vcc->tx_inuse); - dev->tbusy = !atm_may_send(vcc,0); + if (!atm_may_send(vcc,0)) + netif_stop_queue(dev); ATM_SKB(skb)->iovcnt = 0; ATM_SKB(skb)->atm_options = vcc->atm_options; entry->vccs->last_use = jiffies; |