net: sk_sleep() helper
[safe/jmp/linux-2.6] / drivers / atm / atmtcp.c
index 1b9493a..b910181 100644 (file)
@@ -9,6 +9,7 @@
 #include <linux/atm_tcp.h>
 #include <linux/bitops.h>
 #include <linux/init.h>
+#include <linux/slab.h>
 #include <asm/uaccess.h>
 #include <asm/atomic.h>
 
@@ -67,7 +68,7 @@ static int atmtcp_send_control(struct atm_vcc *vcc,int type,
        *(struct atm_vcc **) &new_msg->vcc = vcc;
        old_test = test_bit(flag,&vcc->flags);
        out_vcc->push(out_vcc,skb);
-       add_wait_queue(sk_atm(vcc)->sk_sleep, &wait);
+       add_wait_queue(sk_sleep(sk_atm(vcc)), &wait);
        while (test_bit(flag,&vcc->flags) == old_test) {
                mb();
                out_vcc = PRIV(vcc->dev) ? PRIV(vcc->dev)->vcc : NULL;
@@ -79,7 +80,7 @@ static int atmtcp_send_control(struct atm_vcc *vcc,int type,
                schedule();
        }
        set_current_state(TASK_RUNNING);
-       remove_wait_queue(sk_atm(vcc)->sk_sleep, &wait);
+       remove_wait_queue(sk_sleep(sk_atm(vcc)), &wait);
        return error;
 }
 
@@ -104,7 +105,7 @@ static int atmtcp_recv_control(const struct atmtcp_control *msg)
                    msg->type);
                return -EINVAL;
        }
-       wake_up(sk_atm(vcc)->sk_sleep);
+       wake_up(sk_sleep(sk_atm(vcc)));
        return 0;
 }
 
@@ -352,7 +353,7 @@ static struct atm_dev atmtcp_control_dev = {
        .ops            = &atmtcp_c_dev_ops,
        .type           = "atmtcp",
        .number         = 999,
-       .lock           = SPIN_LOCK_UNLOCKED
+       .lock           = __SPIN_LOCK_UNLOCKED(atmtcp_control_dev.lock)
 };