aboutsummaryrefslogtreecommitdiffstats
path: root/net/hsr/hsr_framereg.c
diff options
context:
space:
mode:
authorArvid Brodin <arvid.brodin@alten.se>2014-07-04 17:35:47 -0400
committerDavid S. Miller <davem@davemloft.net>2014-07-08 14:35:30 -0400
commitabff7162765cd66ab109c97fd433ef1f39299120 (patch)
tree4d7f1547bf99ac7a0e9a68556b8d74550ba26d0d /net/hsr/hsr_framereg.c
parent81ba6afd6e6443d2bf4bf40f16df1f1f91c603f8 (diff)
net/hsr: Move to per-hsr device prune timer.
Signed-off-by: Arvid Brodin <arvid.brodin@alten.se> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/hsr/hsr_framereg.c')
-rw-r--r--net/hsr/hsr_framereg.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/net/hsr/hsr_framereg.c b/net/hsr/hsr_framereg.c
index b419edbd7012..79e3f7ff6654 100644
--- a/net/hsr/hsr_framereg.c
+++ b/net/hsr/hsr_framereg.c
@@ -366,12 +366,15 @@ static bool is_late(struct hsr_node *node, enum hsr_dev_idx dev_idx)
366/* Remove stale sequence_nr records. Called by timer every 366/* Remove stale sequence_nr records. Called by timer every
367 * HSR_LIFE_CHECK_INTERVAL (two seconds or so). 367 * HSR_LIFE_CHECK_INTERVAL (two seconds or so).
368 */ 368 */
369void hsr_prune_nodes(struct hsr_priv *hsr) 369void hsr_prune_nodes(unsigned long data)
370{ 370{
371 struct hsr_priv *hsr;
371 struct hsr_node *node; 372 struct hsr_node *node;
372 unsigned long timestamp; 373 unsigned long timestamp;
373 unsigned long time_a, time_b; 374 unsigned long time_a, time_b;
374 375
376 hsr = (struct hsr_priv *) data;
377
375 rcu_read_lock(); 378 rcu_read_lock();
376 list_for_each_entry_rcu(node, &hsr->node_db, mac_list) { 379 list_for_each_entry_rcu(node, &hsr->node_db, mac_list) {
377 /* Shorthand */ 380 /* Shorthand */