patch-2.4.21 linux-2.4.21/net/atm/signaling.c
Next file: linux-2.4.21/net/bluetooth/Config.in
Previous file: linux-2.4.21/net/atm/resources.h
Back to the patch index
Back to the overall index
- Lines: 51
- Date:
2003-06-13 07:51:39.000000000 -0700
- Orig file:
linux-2.4.20/net/atm/signaling.c
- Orig date:
2001-06-27 17:10:55.000000000 -0700
diff -urN linux-2.4.20/net/atm/signaling.c linux-2.4.21/net/atm/signaling.c
@@ -61,7 +61,7 @@
}
#endif
atm_force_charge(sigd,skb->truesize);
- skb_queue_tail(&sigd->recvq,skb);
+ skb_queue_tail(&sigd->sk->receive_queue,skb);
wake_up(&sigd->sleep);
}
@@ -98,7 +98,7 @@
struct atm_vcc *session_vcc;
msg = (struct atmsvc_msg *) skb->data;
- atomic_sub(skb->truesize+ATM_PDU_OVHD,&vcc->tx_inuse);
+ atomic_sub(skb->truesize+ATM_PDU_OVHD,&vcc->sk->wmem_alloc);
DPRINTK("sigd_send %d (0x%lx)\n",(int) msg->type,
(unsigned long) msg->vcc);
vcc = *(struct atm_vcc **) &msg->vcc;
@@ -198,7 +198,7 @@
static void purge_vccs(struct atm_vcc *vcc)
{
while (vcc) {
- if (vcc->family == PF_ATMSVC &&
+ if (vcc->sk->family == PF_ATMSVC &&
!test_bit(ATM_VF_META,&vcc->flags)) {
set_bit(ATM_VF_RELEASED,&vcc->flags);
vcc->reply = -EUNATCH;
@@ -212,16 +212,20 @@
static void sigd_close(struct atm_vcc *vcc)
{
struct atm_dev *dev;
+ struct list_head *p;
DPRINTK("sigd_close\n");
sigd = NULL;
- if (skb_peek(&vcc->recvq))
+ if (skb_peek(&vcc->sk->receive_queue))
printk(KERN_ERR "sigd_close: closing with requests pending\n");
- skb_queue_purge(&vcc->recvq);
+ skb_queue_purge(&vcc->sk->receive_queue);
purge_vccs(nodev_vccs);
spin_lock (&atm_dev_lock);
- for (dev = atm_devs; dev; dev = dev->next) purge_vccs(dev->vccs);
+ list_for_each(p, &atm_devs) {
+ dev = list_entry(p, struct atm_dev, dev_list);
+ purge_vccs(dev->vccs);
+ }
spin_unlock (&atm_dev_lock);
}
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)