mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-28 10:41:38 -04:00
net/core: Convert sk_timer users to use timer_setup()
In preparation for unconditionally passing the struct timer_list pointer to all timer callbacks, switch to using the new timer_setup() and from_timer() to pass the timer pointer explicitly for all users of sk_timer. Cc: "David S. Miller" <[email protected]> Cc: Ralf Baechle <[email protected]> Cc: Andrew Hendry <[email protected]> Cc: Eric Dumazet <[email protected]> Cc: Paolo Abeni <[email protected]> Cc: David Howells <[email protected]> Cc: Julia Lawall <[email protected]> Cc: linzhang <[email protected]> Cc: Ingo Molnar <[email protected]> Cc: [email protected] Cc: [email protected] Cc: [email protected] Signed-off-by: Kees Cook <[email protected]> Signed-off-by: David S. Miller <[email protected]>
This commit is contained in:
parent
26566eae80
commit
99767f278c
6 changed files with 46 additions and 42 deletions
|
|
@ -241,9 +241,9 @@ void nr_destroy_socket(struct sock *);
|
|||
/*
|
||||
* Handler for deferred kills.
|
||||
*/
|
||||
static void nr_destroy_timer(unsigned long data)
|
||||
static void nr_destroy_timer(struct timer_list *t)
|
||||
{
|
||||
struct sock *sk=(struct sock *)data;
|
||||
struct sock *sk = from_timer(sk, t, sk_timer);
|
||||
bh_lock_sock(sk);
|
||||
sock_hold(sk);
|
||||
nr_destroy_socket(sk);
|
||||
|
|
@ -284,7 +284,7 @@ void nr_destroy_socket(struct sock *sk)
|
|||
|
||||
if (sk_has_allocations(sk)) {
|
||||
/* Defer: outstanding buffers */
|
||||
sk->sk_timer.function = nr_destroy_timer;
|
||||
sk->sk_timer.function = (TIMER_FUNC_TYPE)nr_destroy_timer;
|
||||
sk->sk_timer.expires = jiffies + 2 * HZ;
|
||||
add_timer(&sk->sk_timer);
|
||||
} else
|
||||
|
|
|
|||
|
|
@ -29,23 +29,23 @@
|
|||
#include <linux/interrupt.h>
|
||||
#include <net/netrom.h>
|
||||
|
||||
static void nr_heartbeat_expiry(unsigned long);
|
||||
static void nr_t1timer_expiry(unsigned long);
|
||||
static void nr_t2timer_expiry(unsigned long);
|
||||
static void nr_t4timer_expiry(unsigned long);
|
||||
static void nr_idletimer_expiry(unsigned long);
|
||||
static void nr_heartbeat_expiry(struct timer_list *);
|
||||
static void nr_t1timer_expiry(struct timer_list *);
|
||||
static void nr_t2timer_expiry(struct timer_list *);
|
||||
static void nr_t4timer_expiry(struct timer_list *);
|
||||
static void nr_idletimer_expiry(struct timer_list *);
|
||||
|
||||
void nr_init_timers(struct sock *sk)
|
||||
{
|
||||
struct nr_sock *nr = nr_sk(sk);
|
||||
|
||||
setup_timer(&nr->t1timer, nr_t1timer_expiry, (unsigned long)sk);
|
||||
setup_timer(&nr->t2timer, nr_t2timer_expiry, (unsigned long)sk);
|
||||
setup_timer(&nr->t4timer, nr_t4timer_expiry, (unsigned long)sk);
|
||||
setup_timer(&nr->idletimer, nr_idletimer_expiry, (unsigned long)sk);
|
||||
timer_setup(&nr->t1timer, nr_t1timer_expiry, 0);
|
||||
timer_setup(&nr->t2timer, nr_t2timer_expiry, 0);
|
||||
timer_setup(&nr->t4timer, nr_t4timer_expiry, 0);
|
||||
timer_setup(&nr->idletimer, nr_idletimer_expiry, 0);
|
||||
|
||||
/* initialized by sock_init_data */
|
||||
sk->sk_timer.function = &nr_heartbeat_expiry;
|
||||
sk->sk_timer.function = (TIMER_FUNC_TYPE)nr_heartbeat_expiry;
|
||||
}
|
||||
|
||||
void nr_start_t1timer(struct sock *sk)
|
||||
|
|
@ -112,9 +112,9 @@ int nr_t1timer_running(struct sock *sk)
|
|||
return timer_pending(&nr_sk(sk)->t1timer);
|
||||
}
|
||||
|
||||
static void nr_heartbeat_expiry(unsigned long param)
|
||||
static void nr_heartbeat_expiry(struct timer_list *t)
|
||||
{
|
||||
struct sock *sk = (struct sock *)param;
|
||||
struct sock *sk = from_timer(sk, t, sk_timer);
|
||||
struct nr_sock *nr = nr_sk(sk);
|
||||
|
||||
bh_lock_sock(sk);
|
||||
|
|
@ -151,10 +151,10 @@ static void nr_heartbeat_expiry(unsigned long param)
|
|||
bh_unlock_sock(sk);
|
||||
}
|
||||
|
||||
static void nr_t2timer_expiry(unsigned long param)
|
||||
static void nr_t2timer_expiry(struct timer_list *t)
|
||||
{
|
||||
struct sock *sk = (struct sock *)param;
|
||||
struct nr_sock *nr = nr_sk(sk);
|
||||
struct nr_sock *nr = from_timer(nr, t, t2timer);
|
||||
struct sock *sk = &nr->sock;
|
||||
|
||||
bh_lock_sock(sk);
|
||||
if (nr->condition & NR_COND_ACK_PENDING) {
|
||||
|
|
@ -164,19 +164,20 @@ static void nr_t2timer_expiry(unsigned long param)
|
|||
bh_unlock_sock(sk);
|
||||
}
|
||||
|
||||
static void nr_t4timer_expiry(unsigned long param)
|
||||
static void nr_t4timer_expiry(struct timer_list *t)
|
||||
{
|
||||
struct sock *sk = (struct sock *)param;
|
||||
struct nr_sock *nr = from_timer(nr, t, t4timer);
|
||||
struct sock *sk = &nr->sock;
|
||||
|
||||
bh_lock_sock(sk);
|
||||
nr_sk(sk)->condition &= ~NR_COND_PEER_RX_BUSY;
|
||||
bh_unlock_sock(sk);
|
||||
}
|
||||
|
||||
static void nr_idletimer_expiry(unsigned long param)
|
||||
static void nr_idletimer_expiry(struct timer_list *t)
|
||||
{
|
||||
struct sock *sk = (struct sock *)param;
|
||||
struct nr_sock *nr = nr_sk(sk);
|
||||
struct nr_sock *nr = from_timer(nr, t, idletimer);
|
||||
struct sock *sk = &nr->sock;
|
||||
|
||||
bh_lock_sock(sk);
|
||||
|
||||
|
|
@ -201,10 +202,10 @@ static void nr_idletimer_expiry(unsigned long param)
|
|||
bh_unlock_sock(sk);
|
||||
}
|
||||
|
||||
static void nr_t1timer_expiry(unsigned long param)
|
||||
static void nr_t1timer_expiry(struct timer_list *t)
|
||||
{
|
||||
struct sock *sk = (struct sock *)param;
|
||||
struct nr_sock *nr = nr_sk(sk);
|
||||
struct nr_sock *nr = from_timer(nr, t, t1timer);
|
||||
struct sock *sk = &nr->sock;
|
||||
|
||||
bh_lock_sock(sk);
|
||||
switch (nr->state) {
|
||||
|
|
|
|||
Loading…
Reference in a new issue