[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <9eeb89c5-865f-2b21-c7c6-7f4479bf4175@cumulusnetworks.com>
Date: Tue, 14 Jul 2020 16:29:33 +0300
From: Nikolay Aleksandrov <nikolay@...ulusnetworks.com>
To: Horatiu Vultur <horatiu.vultur@...rochip.com>,
roopa@...ulusnetworks.com, davem@...emloft.net, kuba@...nel.org,
jiri@...nulli.us, ivecera@...hat.com, andrew@...n.ch,
UNGLinuxDriver@...rochip.com, netdev@...r.kernel.org,
linux-kernel@...r.kernel.org, bridge@...ts.linux-foundation.org
Subject: Re: [PATCH net-next v4 12/12] net: bridge: Add port attribute
IFLA_BRPORT_MRP_IN_OPEN
On 14/07/2020 10:34, Horatiu Vultur wrote:
> This patch adds a new port attribute, IFLA_BRPORT_MRP_IN_OPEN, which
> allows to notify the userspace when the node lost the contiuity of
> MRP_InTest frames.
>
> Signed-off-by: Horatiu Vultur <horatiu.vultur@...rochip.com>
> ---
> include/uapi/linux/if_link.h | 1 +
> net/bridge/br_netlink.c | 3 +++
> tools/include/uapi/linux/if_link.h | 1 +
> 3 files changed, 5 insertions(+)
>
It's kind of late by now, but I'd wish these were contained in a nested MRP attribute. :)
Horatiu, do you expect to have many more MRP attributes outside of MRP netlink code?
Perhaps we should at least dump them only for MRP-aware ports, that should be easy.
They make no sense outside of MRP anyway, but increase the size of the dump for all
right now.
Acked-by: Nikolay Aleksandrov <nikolay@...ulusnetworks.com>
> diff --git a/include/uapi/linux/if_link.h b/include/uapi/linux/if_link.h
> index cc185a007ade8..26842ffd0501d 100644
> --- a/include/uapi/linux/if_link.h
> +++ b/include/uapi/linux/if_link.h
> @@ -344,6 +344,7 @@ enum {
> IFLA_BRPORT_ISOLATED,
> IFLA_BRPORT_BACKUP_PORT,
> IFLA_BRPORT_MRP_RING_OPEN,
> + IFLA_BRPORT_MRP_IN_OPEN,
> __IFLA_BRPORT_MAX
> };
> #define IFLA_BRPORT_MAX (__IFLA_BRPORT_MAX - 1)
> diff --git a/net/bridge/br_netlink.c b/net/bridge/br_netlink.c
> index c532fa65c9834..147d52596e174 100644
> --- a/net/bridge/br_netlink.c
> +++ b/net/bridge/br_netlink.c
> @@ -152,6 +152,7 @@ static inline size_t br_port_info_size(void)
> #endif
> + nla_total_size(sizeof(u16)) /* IFLA_BRPORT_GROUP_FWD_MASK */
> + nla_total_size(sizeof(u8)) /* IFLA_BRPORT_MRP_RING_OPEN */
> + + nla_total_size(sizeof(u8)) /* IFLA_BRPORT_MRP_IN_OPEN */
> + 0;
> }
>
> @@ -216,6 +217,8 @@ static int br_port_fill_attrs(struct sk_buff *skb,
> !!(p->flags & BR_NEIGH_SUPPRESS)) ||
> nla_put_u8(skb, IFLA_BRPORT_MRP_RING_OPEN, !!(p->flags &
> BR_MRP_LOST_CONT)) ||
> + nla_put_u8(skb, IFLA_BRPORT_MRP_IN_OPEN,
> + !!(p->flags & BR_MRP_LOST_IN_CONT)) ||
> nla_put_u8(skb, IFLA_BRPORT_ISOLATED, !!(p->flags & BR_ISOLATED)))
> return -EMSGSIZE;
>
> diff --git a/tools/include/uapi/linux/if_link.h b/tools/include/uapi/linux/if_link.h
> index cafedbbfefbe9..781e482dc499f 100644
> --- a/tools/include/uapi/linux/if_link.h
> +++ b/tools/include/uapi/linux/if_link.h
> @@ -344,6 +344,7 @@ enum {
> IFLA_BRPORT_ISOLATED,
> IFLA_BRPORT_BACKUP_PORT,
> IFLA_BRPORT_MRP_RING_OPEN,
> + IFLA_BRPORT_MRP_IN_OPEN,
> __IFLA_BRPORT_MAX
> };
> #define IFLA_BRPORT_MAX (__IFLA_BRPORT_MAX - 1)
>
Powered by blists - more mailing lists