X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=net%2Fx25%2Fx25_timer.c;h=71ff3088f6fe325cb7321df423566ce59e420b5e;hb=97bf2856c6014879bd04983a3e9dfcdac1e7fe85;hp=949faa7f6b92f8ad25902dae7f7b799be747b10a;hpb=6a77f38946aaee1cd85eeec6cf4229b204c15071;p=linux-2.6.git diff --git a/net/x25/x25_timer.c b/net/x25/x25_timer.c index 949faa7f6..71ff3088f 100644 --- a/net/x25/x25_timer.c +++ b/net/x25/x25_timer.c @@ -23,7 +23,7 @@ #include #include #include -#include +#include #include static void x25_heartbeat_expiry(unsigned long); @@ -31,7 +31,7 @@ static void x25_timer_expiry(unsigned long); void x25_init_timers(struct sock *sk) { - struct x25_opt *x25 = x25_sk(sk); + struct x25_sock *x25 = x25_sk(sk); init_timer(&x25->timer); x25->timer.data = (unsigned long)sk; @@ -54,28 +54,28 @@ void x25_stop_heartbeat(struct sock *sk) void x25_start_t2timer(struct sock *sk) { - struct x25_opt *x25 = x25_sk(sk); + struct x25_sock *x25 = x25_sk(sk); mod_timer(&x25->timer, jiffies + x25->t2); } void x25_start_t21timer(struct sock *sk) { - struct x25_opt *x25 = x25_sk(sk); + struct x25_sock *x25 = x25_sk(sk); mod_timer(&x25->timer, jiffies + x25->t21); } void x25_start_t22timer(struct sock *sk) { - struct x25_opt *x25 = x25_sk(sk); + struct x25_sock *x25 = x25_sk(sk); mod_timer(&x25->timer, jiffies + x25->t22); } void x25_start_t23timer(struct sock *sk) { - struct x25_opt *x25 = x25_sk(sk); + struct x25_sock *x25 = x25_sk(sk); mod_timer(&x25->timer, jiffies + x25->t23); } @@ -87,7 +87,7 @@ void x25_stop_timer(struct sock *sk) unsigned long x25_display_timer(struct sock *sk) { - struct x25_opt *x25 = x25_sk(sk); + struct x25_sock *x25 = x25_sk(sk); if (!timer_pending(&x25->timer)) return 0; @@ -114,8 +114,9 @@ static void x25_heartbeat_expiry(unsigned long param) if (sock_flag(sk, SOCK_DESTROY) || (sk->sk_state == TCP_LISTEN && sock_flag(sk, SOCK_DEAD))) { + bh_unlock_sock(sk); x25_destroy_socket(sk); - goto unlock; + return; } break; @@ -128,7 +129,6 @@ static void x25_heartbeat_expiry(unsigned long param) } restart_heartbeat: x25_start_heartbeat(sk); -unlock: bh_unlock_sock(sk); } @@ -138,7 +138,7 @@ unlock: */ static inline void x25_do_timer_expiry(struct sock * sk) { - struct x25_opt *x25 = x25_sk(sk); + struct x25_sock *x25 = x25_sk(sk); switch (x25->state) {