[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20150304.003844.1400829201582760359.davem@davemloft.net>
Date: Wed, 04 Mar 2015 00:38:44 -0500 (EST)
From: David Miller <davem@...emloft.net>
To: sfeldma@...il.com
Cc: netdev@...r.kernel.org, jiri@...nulli.us, roopa@...ulusnetworks.com
Subject: Re: [PATCH net-next v3 0/7] switchdev: add IPv4 routing offload
From: sfeldma@...il.com
Date: Tue, 3 Mar 2015 15:31:53 -0800
> v3:
>
> Changes based on v2 review comments:
>
> - Move check for custom rules up earlier in patch set, to keep git bisect
> safe.
> - Simplify the route add/modify failure handling to simple try until
> failure, and then on failure, undo everything. The switchdev driver
> will return err when route can normally be installed to device, but
> the install fails for one reason or another (no space left on device,
> etc). If a failure happens, uninstall all routes from the device,
> punting forwarding for all routes back to the kernel.
> - Scan route's full nexthop list, ensuring all nexthop devs belong
> to the same switchdev device, otherwise don't try to install route
> to device.
Getting really close.
I think you have to make some minor adjustments to the
fib_flush_external() cases.
First of all, that code that unloads the entries from the hardware
should clear the RTNH_F_EXTERNAL flag.
Secondly, if you call fib_flush_external() because an add returned an
error, you have to set some boolean state which prevents the next new
route insert from loading only that new route into the hardware
because that's exactly what will happen with your current
implementation.
Thanks.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists