net/lapb: Convert timers to use timer_setup()
Subsystems (3)
PATCH 1/1 net/lapb: Convert timers 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.
Cc "David S. Miller" <[email protected]>
Cc Hans Liljestrand <[email protected]>
Cc "Reshetova, Elena" <[email protected]>
Cc Thomas Gleixner <[email protected]>
Signed-off-by Kees Cook <[email protected]>
---
This requires commit 686fef928bba ("timer: Prepare to change timer callback argument type") in v4.14-rc3, but should be otherwise stand-alone.
--- net/lapb/lapb_iface.c | 4 ++-- net/lapb/lapb_timer.c | 18 ++++++++---------- 2 files changed, 10 insertions(+), 12 deletions(-)
net/lapb/lapb_iface.c +2 -2
@@ -127,8 +127,8 @@ static struct lapb_cb *lapb_create_cb(void)skb_queue_head_init (&lapb->write_queue);skb_queue_head_init (&lapb->ack_queue); -init_timer (&lapb->t1timer); -init_timer (&lapb->t2timer); +timer_setup (&lapb->t1timer,NULL ,0 ); +timer_setup (&lapb->t2timer,NULL ,0 ); lapb->t1 =LAPB_DEFAULT_T1 ; lapb->t2 =LAPB_DEFAULT_T2 ;
net/lapb/lapb_timer.c +8 -10
@@ -35,15 +35,14 @@#include <linux/interrupt.h> #include <net/lapb.h> -static void lapb_t1timer_expiry (unsigned long ); -static void lapb_t2timer_expiry (unsigned long ); +static void lapb_t1timer_expiry (struct timer_list *); +static void lapb_t2timer_expiry (struct timer_list *);void lapb_start_t1timer (struct lapb_cb *lapb) {del_timer (&lapb->t1timer); - lapb->t1timer.data = (unsigned long )lapb; - lapb->t1timer.function = &lapb_t1timer_expiry; + lapb->t1timer.function = (TIMER_FUNC_TYPE )lapb_t1timer_expiry; lapb->t1timer.expires = jiffies + lapb->t1;add_timer (&lapb->t1timer);
@@ -53,8 +52,7 @@ void lapb_start_t2timer(struct lapb_cb *lapb) {del_timer (&lapb->t2timer); - lapb->t2timer.data = (unsigned long )lapb; - lapb->t2timer.function = &lapb_t2timer_expiry; + lapb->t2timer.function = (TIMER_FUNC_TYPE )lapb_t2timer_expiry; lapb->t2timer.expires = jiffies + lapb->t2;add_timer (&lapb->t2timer);
@@ -75,9 +73,9 @@ int lapb_t1timer_running(struct lapb_cb *lapb)return timer_pending (&lapb->t1timer); } -static void lapb_t2timer_expiry (unsigned long param) +static void lapb_t2timer_expiry (struct timer_list *t) { -struct lapb_cb *lapb = (struct lapb_cb *)param; +struct lapb_cb *lapb =from_timer (lapb, t, t2timer);if (lapb->condition &LAPB_ACK_PENDING_CONDITION ) { lapb->condition &= ~LAPB_ACK_PENDING_CONDITION ;
@@ -85,9 +83,9 @@ static void lapb_t2timer_expiry(unsigned long param) } } -static void lapb_t1timer_expiry (unsigned long param) +static void lapb_t1timer_expiry (struct timer_list *t) { -struct lapb_cb *lapb = (struct lapb_cb *)param; +struct lapb_cb *lapb =from_timer (lapb, t, t1timer);switch (lapb->state) {
Signature · 6 lines
2.7.4 -- Kees Cook Pixel Security