On 09/05/2021 22:45, Linus Lüssing wrote:
> Now that we have split the multicast router state into two, one for IPv4
> and one for IPv6, also add individual timers to the mdb netlink router
> port dump. Leaving the old timer attribute for backwards compatibility.
> 
> Signed-off-by: Linus Lüssing <linus.luess...@c0d3.blue>
> ---
>  include/uapi/linux/if_bridge.h | 2 ++
>  net/bridge/br_mdb.c            | 8 +++++++-
>  2 files changed, 9 insertions(+), 1 deletion(-)
> 

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

> diff --git a/include/uapi/linux/if_bridge.h b/include/uapi/linux/if_bridge.h
> index 13d59c5..6b56a75 100644
> --- a/include/uapi/linux/if_bridge.h
> +++ b/include/uapi/linux/if_bridge.h
> @@ -627,6 +627,8 @@ enum {
>       MDBA_ROUTER_PATTR_UNSPEC,
>       MDBA_ROUTER_PATTR_TIMER,
>       MDBA_ROUTER_PATTR_TYPE,
> +     MDBA_ROUTER_PATTR_INET_TIMER,
> +     MDBA_ROUTER_PATTR_INET6_TIMER,
>       __MDBA_ROUTER_PATTR_MAX
>  };
>  #define MDBA_ROUTER_PATTR_MAX (__MDBA_ROUTER_PATTR_MAX - 1)
> diff --git a/net/bridge/br_mdb.c b/net/bridge/br_mdb.c
> index 3c608da..2cdd9b6 100644
> --- a/net/bridge/br_mdb.c
> +++ b/net/bridge/br_mdb.c
> @@ -79,7 +79,13 @@ static int br_rports_fill_info(struct sk_buff *skb, struct 
> netlink_callback *cb,
>                   nla_put_u32(skb, MDBA_ROUTER_PATTR_TIMER,
>                               max(ip4_timer, ip6_timer)) ||
>                   nla_put_u8(skb, MDBA_ROUTER_PATTR_TYPE,
> -                            p->multicast_router)) {
> +                            p->multicast_router) ||
> +                 (have_ip4_mc_rtr &&
> +                  nla_put_u32(skb, MDBA_ROUTER_PATTR_INET_TIMER,
> +                              ip4_timer)) ||
> +                 (have_ip6_mc_rtr &&
> +                  nla_put_u32(skb, MDBA_ROUTER_PATTR_INET6_TIMER,
> +                              ip6_timer))) {
>                       nla_nest_cancel(skb, port_nest);
>                       goto fail;
>               }
> 

Reply via email to