aboutsummaryrefslogtreecommitdiffstats
path: root/net/ax25/ax25_timer.c
diff options
context:
space:
mode:
authorKees Cook <keescook@chromium.org>2017-10-24 04:45:39 -0400
committerDavid S. Miller <davem@davemloft.net>2017-10-24 23:03:56 -0400
commit8dbd05ff5c4e50a3e5b1ed4089c2d0b4210379c6 (patch)
treeadd8add0f85ad0b91d5191d0a16f0367c526a372 /net/ax25/ax25_timer.c
parent9c3b57518363577d4e2ea1964ef4fa03e100beaa (diff)
net: ax25: 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: Joerg Reuter <jreuter@yaina.de> Cc: Ralf Baechle <ralf@linux-mips.org> Cc: "David S. Miller" <davem@davemloft.net> Cc: linux-hams@vger.kernel.org Cc: netdev@vger.kernel.org Signed-off-by: Kees Cook <keescook@chromium.org> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ax25/ax25_timer.c')
-rw-r--r--net/ax25/ax25_timer.c41
1 files changed, 20 insertions, 21 deletions
diff --git a/net/ax25/ax25_timer.c b/net/ax25/ax25_timer.c
index 23a6f38a80bf..c47b7ee1e4da 100644
--- a/net/ax25/ax25_timer.c
+++ b/net/ax25/ax25_timer.c
@@ -33,20 +33,19 @@
33#include <linux/mm.h> 33#include <linux/mm.h>
34#include <linux/interrupt.h> 34#include <linux/interrupt.h>
35 35
36static void ax25_heartbeat_expiry(unsigned long); 36static void ax25_heartbeat_expiry(struct timer_list *);
37static void ax25_t1timer_expiry(unsigned long); 37static void ax25_t1timer_expiry(struct timer_list *);
38static void ax25_t2timer_expiry(unsigned long); 38static void ax25_t2timer_expiry(struct timer_list *);
39static void ax25_t3timer_expiry(unsigned long); 39static void ax25_t3timer_expiry(struct timer_list *);
40static void ax25_idletimer_expiry(unsigned long); 40static void ax25_idletimer_expiry(struct timer_list *);
41 41
42void ax25_setup_timers(ax25_cb *ax25) 42void ax25_setup_timers(ax25_cb *ax25)
43{ 43{
44 setup_timer(&ax25->timer, ax25_heartbeat_expiry, (unsigned long)ax25); 44 timer_setup(&ax25->timer, ax25_heartbeat_expiry, 0);
45 setup_timer(&ax25->t1timer, ax25_t1timer_expiry, (unsigned long)ax25); 45 timer_setup(&ax25->t1timer, ax25_t1timer_expiry, 0);
46 setup_timer(&ax25->t2timer, ax25_t2timer_expiry, (unsigned long)ax25); 46 timer_setup(&ax25->t2timer, ax25_t2timer_expiry, 0);
47 setup_timer(&ax25->t3timer, ax25_t3timer_expiry, (unsigned long)ax25); 47 timer_setup(&ax25->t3timer, ax25_t3timer_expiry, 0);
48 setup_timer(&ax25->idletimer, ax25_idletimer_expiry, 48 timer_setup(&ax25->idletimer, ax25_idletimer_expiry, 0);
49 (unsigned long)ax25);
50} 49}
51 50
52void ax25_start_heartbeat(ax25_cb *ax25) 51void ax25_start_heartbeat(ax25_cb *ax25)
@@ -120,10 +119,10 @@ unsigned long ax25_display_timer(struct timer_list *timer)
120 119
121EXPORT_SYMBOL(ax25_display_timer); 120EXPORT_SYMBOL(ax25_display_timer);
122 121
123static void ax25_heartbeat_expiry(unsigned long param) 122static void ax25_heartbeat_expiry(struct timer_list *t)
124{ 123{
125 int proto = AX25_PROTO_STD_SIMPLEX; 124 int proto = AX25_PROTO_STD_SIMPLEX;
126 ax25_cb *ax25 = (ax25_cb *)param; 125 ax25_cb *ax25 = from_timer(ax25, t, timer);
127 126
128 if (ax25->ax25_dev) 127 if (ax25->ax25_dev)
129 proto = ax25->ax25_dev->values[AX25_VALUES_PROTOCOL]; 128 proto = ax25->ax25_dev->values[AX25_VALUES_PROTOCOL];
@@ -145,9 +144,9 @@ static void ax25_heartbeat_expiry(unsigned long param)
145 } 144 }
146} 145}
147 146
148static void ax25_t1timer_expiry(unsigned long param) 147static void ax25_t1timer_expiry(struct timer_list *t)
149{ 148{
150 ax25_cb *ax25 = (ax25_cb *)param; 149 ax25_cb *ax25 = from_timer(ax25, t, t1timer);
151 150
152 switch (ax25->ax25_dev->values[AX25_VALUES_PROTOCOL]) { 151 switch (ax25->ax25_dev->values[AX25_VALUES_PROTOCOL]) {
153 case AX25_PROTO_STD_SIMPLEX: 152 case AX25_PROTO_STD_SIMPLEX:
@@ -164,9 +163,9 @@ static void ax25_t1timer_expiry(unsigned long param)
164 } 163 }
165} 164}
166 165
167static void ax25_t2timer_expiry(unsigned long param) 166static void ax25_t2timer_expiry(struct timer_list *t)
168{ 167{
169 ax25_cb *ax25 = (ax25_cb *)param; 168 ax25_cb *ax25 = from_timer(ax25, t, t2timer);
170 169
171 switch (ax25->ax25_dev->values[AX25_VALUES_PROTOCOL]) { 170 switch (ax25->ax25_dev->values[AX25_VALUES_PROTOCOL]) {
172 case AX25_PROTO_STD_SIMPLEX: 171 case AX25_PROTO_STD_SIMPLEX:
@@ -183,9 +182,9 @@ static void ax25_t2timer_expiry(unsigned long param)
183 } 182 }
184} 183}
185 184
186static void ax25_t3timer_expiry(unsigned long param) 185static void ax25_t3timer_expiry(struct timer_list *t)
187{ 186{
188 ax25_cb *ax25 = (ax25_cb *)param; 187 ax25_cb *ax25 = from_timer(ax25, t, t3timer);
189 188
190 switch (ax25->ax25_dev->values[AX25_VALUES_PROTOCOL]) { 189 switch (ax25->ax25_dev->values[AX25_VALUES_PROTOCOL]) {
191 case AX25_PROTO_STD_SIMPLEX: 190 case AX25_PROTO_STD_SIMPLEX:
@@ -204,9 +203,9 @@ static void ax25_t3timer_expiry(unsigned long param)
204 } 203 }
205} 204}
206 205
207static void ax25_idletimer_expiry(unsigned long param) 206static void ax25_idletimer_expiry(struct timer_list *t)
208{ 207{
209 ax25_cb *ax25 = (ax25_cb *)param; 208 ax25_cb *ax25 = from_timer(ax25, t, idletimer);
210 209
211 switch (ax25->ax25_dev->values[AX25_VALUES_PROTOCOL]) { 210 switch (ax25->ax25_dev->values[AX25_VALUES_PROTOCOL]) {
212 case AX25_PROTO_STD_SIMPLEX: 211 case AX25_PROTO_STD_SIMPLEX: