On Wed, Jun 10, 2015 at 7:37 PM, Andy Gospodarek
<go...@cumulusnetworks.com> wrote:
> Signed-off-by: Andy Gospodaerk <go...@cumulusnetworks.com>
> Signed-off-by: Dinesh Dutt <dd...@cumulusnetworks.com>
>
> ---
>  ip/iproute.c | 4 ++++
>  1 file changed, 4 insertions(+)
>
> diff --git a/ip/iproute.c b/ip/iproute.c
> index 3795baf..3369c49 100644
> --- a/ip/iproute.c
> +++ b/ip/iproute.c
> @@ -451,6 +451,8 @@ int print_route(const struct sockaddr_nl *who, struct 
> nlmsghdr *n, void *arg)
>                 fprintf(fp, "offload ");
>         if (r->rtm_flags & RTM_F_NOTIFY)
>                 fprintf(fp, "notify ");
> +       if (r->rtm_flags & RTNH_F_LINKDOWN)
> +               fprintf(fp, "linkdown ");

This seems confusing for ECMP case where only some nexthop devs are
RTNH_F_LINKDOWN?   Why mark entire route "linkdown" when it still has
viable nexthop devs for ECMP?


>         if (tb[RTA_MARK]) {
>                 unsigned int mark = *(unsigned int*)RTA_DATA(tb[RTA_MARK]);
>                 if (mark) {
> @@ -670,6 +672,8 @@ int print_route(const struct sockaddr_nl *who, struct 
> nlmsghdr *n, void *arg)
>                                 fprintf(fp, " onlink");
>                         if (nh->rtnh_flags & RTNH_F_PERVASIVE)
>                                 fprintf(fp, " pervasive");
> +                       if (nh->rtnh_flags & RTNH_F_LINKDOWN)
> +                               fprintf(fp, " linkdown");
>                         len -= NLMSG_ALIGN(nh->rtnh_len);
>                         nh = RTNH_NEXT(nh);
>                 }
> --
> 1.9.3
>
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to