vserver 2.0 rc7
[linux-2.6.git] / drivers / atm / iphase.c
index ce9202e..a43575a 100644 (file)
@@ -1778,16 +1778,18 @@ static int open_tx(struct atm_vcc *vcc)
         if (ia_vcc->pcr < iadev->rate_limit)
            skb_queue_head_init (&ia_vcc->txing_skb);
         if (ia_vcc->pcr < iadev->rate_limit) {
-           if (vcc->qos.txtp.max_sdu != 0) {
+          struct sock *sk = sk_atm(vcc);
+
+          if (vcc->qos.txtp.max_sdu != 0) {
                if (ia_vcc->pcr > 60000)
-                  vcc->sk->sk_sndbuf = vcc->qos.txtp.max_sdu * 5;
+                  sk->sk_sndbuf = vcc->qos.txtp.max_sdu * 5;
                else if (ia_vcc->pcr > 2000)
-                  vcc->sk->sk_sndbuf = vcc->qos.txtp.max_sdu * 4;
+                  sk->sk_sndbuf = vcc->qos.txtp.max_sdu * 4;
                else
-                 vcc->sk->sk_sndbuf = vcc->qos.txtp.max_sdu * 3;
+                 sk->sk_sndbuf = vcc->qos.txtp.max_sdu * 3;
            }
            else
-             vcc->sk->sk_sndbuf = 24576;
+             sk->sk_sndbuf = 24576;
         }
            
        vc = (struct main_vc *)iadev->MAIN_VC_TABLE_ADDR;  
@@ -3244,8 +3246,8 @@ static void __devexit ia_remove_one(struct pci_dev *pdev)
        iadev_count--;
        ia_dev[iadev_count] = NULL;
        _ia_dev[iadev_count] = NULL;
+       IF_EVENT(printk("deregistering iav at (itf:%d)\n", dev->number);)
        atm_dev_deregister(dev);
-       IF_EVENT(printk("iav deregistered at (itf:%d)\n", dev->number);)
 
        iounmap(iadev->base);  
        pci_disable_device(pdev);
@@ -3274,7 +3276,7 @@ static int __init ia_module_init(void)
 {
        int ret;
 
-       ret = pci_module_init(&ia_driver);
+       ret = pci_register_driver(&ia_driver);
        if (ret >= 0) {
                ia_timer.expires = jiffies + 3*HZ;
                add_timer(&ia_timer);