diff options
author | Noel Burton-Krahn <noel@burton-krahn.com> | 2013-09-18 21:24:40 +0200 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2013-09-23 22:53:52 +0200 |
commit | 9fe34f5d920b183ec063550e0f4ec854aa373316 (patch) | |
tree | ece6e10648809dc2aa87e434b3c7b0f3b0dea0d0 /include/net | |
parent | net/lapb: re-send packets on timeout (diff) | |
download | linux-9fe34f5d920b183ec063550e0f4ec854aa373316.tar.xz linux-9fe34f5d920b183ec063550e0f4ec854aa373316.zip |
mrp: add periodictimer to allow retries when packets get lost
MRP doesn't implement the periodictimer in 802.1Q, so it never retries
if packets get lost. I ran into this problem when MRP sent a MVRP
JoinIn before the interface was fully up. The JoinIn was lost, MRP
didn't retry, and MVRP registration failed.
Tested against Juniper QFabric switches
Signed-off-by: Noel Burton-Krahn <noel@burton-krahn.com>
Acked-by: David Ward <david.ward@ll.mit.edu>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/net')
-rw-r--r-- | include/net/mrp.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/include/net/mrp.h b/include/net/mrp.h index 4fbf02aa2ec1..0f7558b638ae 100644 --- a/include/net/mrp.h +++ b/include/net/mrp.h @@ -112,6 +112,7 @@ struct mrp_applicant { struct mrp_application *app; struct net_device *dev; struct timer_list join_timer; + struct timer_list periodic_timer; spinlock_t lock; struct sk_buff_head queue; |