@@ -78,9 +78,8 @@ void hsr_check_announce(struct net_device *hsr_dev, int old_operstate)
78
78
if ((hsr_dev -> operstate == IF_OPER_UP ) && (old_operstate != IF_OPER_UP )) {
79
79
/* Went up */
80
80
hsr_priv -> announce_count = 0 ;
81
- hsr_priv -> announce_timer .expires = jiffies +
82
- msecs_to_jiffies (HSR_ANNOUNCE_INTERVAL );
83
- add_timer (& hsr_priv -> announce_timer );
81
+ mod_timer (& hsr_priv -> announce_timer ,
82
+ jiffies + msecs_to_jiffies (HSR_ANNOUNCE_INTERVAL ));
84
83
}
85
84
86
85
if ((hsr_dev -> operstate != IF_OPER_UP ) && (old_operstate == IF_OPER_UP ))
@@ -361,6 +360,7 @@ static void send_hsr_supervision_frame(struct net_device *hsr_dev, u8 type)
361
360
static void hsr_announce (unsigned long data )
362
361
{
363
362
struct hsr_priv * hsr_priv ;
363
+ unsigned long interval ;
364
364
365
365
hsr_priv = (struct hsr_priv * ) data ;
366
366
@@ -372,14 +372,12 @@ static void hsr_announce(unsigned long data)
372
372
}
373
373
374
374
if (hsr_priv -> announce_count < 3 )
375
- hsr_priv -> announce_timer .expires = jiffies +
376
- msecs_to_jiffies (HSR_ANNOUNCE_INTERVAL );
375
+ interval = msecs_to_jiffies (HSR_ANNOUNCE_INTERVAL );
377
376
else
378
- hsr_priv -> announce_timer .expires = jiffies +
379
- msecs_to_jiffies (HSR_LIFE_CHECK_INTERVAL );
377
+ interval = msecs_to_jiffies (HSR_LIFE_CHECK_INTERVAL );
380
378
381
379
if (is_admin_up (hsr_priv -> dev ))
382
- add_timer (& hsr_priv -> announce_timer );
380
+ mod_timer (& hsr_priv -> announce_timer , jiffies + interval );
383
381
}
384
382
385
383
0 commit comments