|
@@ -29,8 +29,8 @@
|
|
|
#include <net/rose.h>
|
|
|
|
|
|
static void rose_heartbeat_expiry(unsigned long);
|
|
|
-static void rose_timer_expiry(unsigned long);
|
|
|
-static void rose_idletimer_expiry(unsigned long);
|
|
|
+static void rose_timer_expiry(struct timer_list *);
|
|
|
+static void rose_idletimer_expiry(struct timer_list *);
|
|
|
|
|
|
void rose_start_heartbeat(struct sock *sk)
|
|
|
{
|
|
@@ -49,8 +49,7 @@ void rose_start_t1timer(struct sock *sk)
|
|
|
|
|
|
del_timer(&rose->timer);
|
|
|
|
|
|
- rose->timer.data = (unsigned long)sk;
|
|
|
- rose->timer.function = &rose_timer_expiry;
|
|
|
+ rose->timer.function = (TIMER_FUNC_TYPE)rose_timer_expiry;
|
|
|
rose->timer.expires = jiffies + rose->t1;
|
|
|
|
|
|
add_timer(&rose->timer);
|
|
@@ -62,8 +61,7 @@ void rose_start_t2timer(struct sock *sk)
|
|
|
|
|
|
del_timer(&rose->timer);
|
|
|
|
|
|
- rose->timer.data = (unsigned long)sk;
|
|
|
- rose->timer.function = &rose_timer_expiry;
|
|
|
+ rose->timer.function = (TIMER_FUNC_TYPE)rose_timer_expiry;
|
|
|
rose->timer.expires = jiffies + rose->t2;
|
|
|
|
|
|
add_timer(&rose->timer);
|
|
@@ -75,8 +73,7 @@ void rose_start_t3timer(struct sock *sk)
|
|
|
|
|
|
del_timer(&rose->timer);
|
|
|
|
|
|
- rose->timer.data = (unsigned long)sk;
|
|
|
- rose->timer.function = &rose_timer_expiry;
|
|
|
+ rose->timer.function = (TIMER_FUNC_TYPE)rose_timer_expiry;
|
|
|
rose->timer.expires = jiffies + rose->t3;
|
|
|
|
|
|
add_timer(&rose->timer);
|
|
@@ -88,8 +85,7 @@ void rose_start_hbtimer(struct sock *sk)
|
|
|
|
|
|
del_timer(&rose->timer);
|
|
|
|
|
|
- rose->timer.data = (unsigned long)sk;
|
|
|
- rose->timer.function = &rose_timer_expiry;
|
|
|
+ rose->timer.function = (TIMER_FUNC_TYPE)rose_timer_expiry;
|
|
|
rose->timer.expires = jiffies + rose->hb;
|
|
|
|
|
|
add_timer(&rose->timer);
|
|
@@ -102,8 +98,7 @@ void rose_start_idletimer(struct sock *sk)
|
|
|
del_timer(&rose->idletimer);
|
|
|
|
|
|
if (rose->idle > 0) {
|
|
|
- rose->idletimer.data = (unsigned long)sk;
|
|
|
- rose->idletimer.function = &rose_idletimer_expiry;
|
|
|
+ rose->idletimer.function = (TIMER_FUNC_TYPE)rose_idletimer_expiry;
|
|
|
rose->idletimer.expires = jiffies + rose->idle;
|
|
|
|
|
|
add_timer(&rose->idletimer);
|
|
@@ -163,10 +158,10 @@ static void rose_heartbeat_expiry(unsigned long param)
|
|
|
bh_unlock_sock(sk);
|
|
|
}
|
|
|
|
|
|
-static void rose_timer_expiry(unsigned long param)
|
|
|
+static void rose_timer_expiry(struct timer_list *t)
|
|
|
{
|
|
|
- struct sock *sk = (struct sock *)param;
|
|
|
- struct rose_sock *rose = rose_sk(sk);
|
|
|
+ struct rose_sock *rose = from_timer(rose, t, timer);
|
|
|
+ struct sock *sk = &rose->sock;
|
|
|
|
|
|
bh_lock_sock(sk);
|
|
|
switch (rose->state) {
|
|
@@ -192,9 +187,10 @@ static void rose_timer_expiry(unsigned long param)
|
|
|
bh_unlock_sock(sk);
|
|
|
}
|
|
|
|
|
|
-static void rose_idletimer_expiry(unsigned long param)
|
|
|
+static void rose_idletimer_expiry(struct timer_list *t)
|
|
|
{
|
|
|
- struct sock *sk = (struct sock *)param;
|
|
|
+ struct rose_sock *rose = from_timer(rose, t, idletimer);
|
|
|
+ struct sock *sk = &rose->sock;
|
|
|
|
|
|
bh_lock_sock(sk);
|
|
|
rose_clear_queues(sk);
|