Thread (27 messages) flat view 27 messages, 5 authors, 2017-02-08

Re: [patch net-next 12/15] ipv4: fib: Notify about nexthop status changes

From: Ido Schimmel <hidden>
Date: 2017-02-08 15:50:34

On Wed, Feb 08, 2017 at 09:56:00AM -0500, Andy Gospodarek wrote:
On Wed, Feb 08, 2017 at 11:16:39AM +0100, Jiri Pirko wrote:
quoted
From: Ido Schimmel <redacted>

When a multipath route is hit the kernel doesn't consider nexthops that
are DEAD or LINKDOWN when IN_DEV_IGNORE_ROUTES_WITH_LINKDOWN is set.
Devices that offload multipath routes need to be made aware of nexthop
status changes. Otherwise, the device will keep forwarding packets to
non-functional nexthops.

Add the FIB_EVENT_NH_{ADD,DEL} events to the fib notification chain,
which notify capable devices when they should add or delete a nexthop
from their tables.
This looks good -- thanks for doing this.

IIUC the hardware forwarding use case for your hardware covered by David
Ahern's patch[1] to the ipv4 software path selection is already covered,
so this is probably the last known link/neighbor forwarding issue for
ipv4 that needs coverage.

1. a6db449 net: ipv4: Consider failed nexthops in multipath routes
Yep, it aligns the kernel's datapath with what we already implemented in
mlxsw. In case the neighbour can't be resolve, then the nexthop isn't
reflected to the device (we need the MAC...).

In the case of multipath routes, if some of the nexthops can be
reflected, then we do so, but periodically ask the kernel to try and
resolve the others. Otherwise, these nexthops will never be resolved, as
the kernel doesn't see the packets hitting the multipath route and
therefore lacks the motivation to resolve its nexthops.
quoted
Cc: Roopa Prabhu <redacted>
Cc: David Ahern <redacted>
Cc: Andy Gospodarek <andy@greyhouse.net>
Reviewed-by: Andy Gospodarek <redacted>
Thanks for reviewing!
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help