On 14/07/2020 10:34, Horatiu Vultur wrote:
> This patch extends the 'struct br_mrp' to contain information regarding
> the MRP interconnect. It contains the following:
> - the interconnect port 'i_port', which is NULL if the node doesn't have
>   a interconnect role
> - the interconnect id, which is similar with the ring id, but this field
>   is also part of the MRP_InTest frames.
> - the interconnect role, which can be MIM or MIC.
> - the interconnect state, which can be open or closed.
> - the interconnect delayed_work for sending MRP_InTest frames and check
>   for lost of continuity.
> 
> Signed-off-by: Horatiu Vultur <horatiu.vul...@microchip.com>
> ---
>  net/bridge/br_private_mrp.h | 13 +++++++++++++
>  1 file changed, 13 insertions(+)
> 

Acked-by: Nikolay Aleksandrov <niko...@cumulusnetworks.com>

> diff --git a/net/bridge/br_private_mrp.h b/net/bridge/br_private_mrp.h
> index 315eb37d89f0f..8841ba847fb29 100644
> --- a/net/bridge/br_private_mrp.h
> +++ b/net/bridge/br_private_mrp.h
> @@ -12,8 +12,10 @@ struct br_mrp {
>  
>       struct net_bridge_port __rcu    *p_port;
>       struct net_bridge_port __rcu    *s_port;
> +     struct net_bridge_port __rcu    *i_port;
>  
>       u32                             ring_id;
> +     u16                             in_id;
>       u16                             prio;
>  
>       enum br_mrp_ring_role_type      ring_role;
> @@ -21,6 +23,11 @@ struct br_mrp {
>       enum br_mrp_ring_state_type     ring_state;
>       u32                             ring_transitions;
>  
> +     enum br_mrp_in_role_type        in_role;
> +     u8                              in_role_offloaded;
> +     enum br_mrp_in_state_type       in_state;
> +     u32                             in_transitions;
> +
>       struct delayed_work             test_work;
>       u32                             test_interval;
>       unsigned long                   test_end;
> @@ -28,6 +35,12 @@ struct br_mrp {
>       u32                             test_max_miss;
>       bool                            test_monitor;
>  
> +     struct delayed_work             in_test_work;
> +     u32                             in_test_interval;
> +     unsigned long                   in_test_end;
> +     u32                             in_test_count_miss;
> +     u32                             in_test_max_miss;
> +
>       u32                             seq_id;
>  
>       struct rcu_head                 rcu;
> 

Reply via email to