This patch extends the function br_mrp_fill_info to return also the
status for the interconnect ring.

Signed-off-by: Horatiu Vultur <horatiu.vul...@microchip.com>
---
 net/bridge/br_mrp_netlink.c | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

diff --git a/net/bridge/br_mrp_netlink.c b/net/bridge/br_mrp_netlink.c
index a006e0771e8d3..2a2fdf3500c5b 100644
--- a/net/bridge/br_mrp_netlink.c
+++ b/net/bridge/br_mrp_netlink.c
@@ -474,6 +474,11 @@ int br_mrp_fill_info(struct sk_buff *skb, struct 
net_bridge *br)
                                     p->dev->ifindex))
                        goto nla_put_failure;
 
+               p = rcu_dereference(mrp->i_port);
+               if (p && nla_put_u32(skb, IFLA_BRIDGE_MRP_INFO_I_IFINDEX,
+                                    p->dev->ifindex))
+                       goto nla_put_failure;
+
                if (nla_put_u16(skb, IFLA_BRIDGE_MRP_INFO_PRIO,
                                mrp->prio))
                        goto nla_put_failure;
@@ -493,6 +498,19 @@ int br_mrp_fill_info(struct sk_buff *skb, struct 
net_bridge *br)
                                mrp->test_monitor))
                        goto nla_put_failure;
 
+               if (nla_put_u32(skb, IFLA_BRIDGE_MRP_INFO_IN_STATE,
+                               mrp->in_state))
+                       goto nla_put_failure;
+               if (nla_put_u32(skb, IFLA_BRIDGE_MRP_INFO_IN_ROLE,
+                               mrp->in_role))
+                       goto nla_put_failure;
+               if (nla_put_u32(skb, IFLA_BRIDGE_MRP_INFO_IN_TEST_INTERVAL,
+                               mrp->in_test_interval))
+                       goto nla_put_failure;
+               if (nla_put_u32(skb, IFLA_BRIDGE_MRP_INFO_IN_TEST_MAX_MISS,
+                               mrp->in_test_max_miss))
+                       goto nla_put_failure;
+
                nla_nest_end(skb, tb);
        }
        nla_nest_end(skb, mrp_tb);
-- 
2.27.0

Reply via email to