Thread (21 messages) flat view 21 messages, 3 authors, 2017-03-13

Re: [patch net-next 04/10] net: Add netif_is_vrf_master helper

From: Ido Schimmel <hidden>
Date: 2017-03-13 15:58:08

On Mon, Mar 13, 2017 at 09:15:32AM -0600, David Ahern wrote:
On 3/13/17 9:01 AM, Ido Schimmel wrote:
quoted
On Mon, Mar 13, 2017 at 08:39:19AM -0600, David Ahern wrote:
quoted
On 3/13/17 1:38 AM, Jiri Pirko wrote:
quoted
From: Ido Schimmel <redacted>

Drivers capable of offloading VRF configurations need to know the ports
are enslaved to an actual VRF device and not some other L3 master.

Add a flag to indicate netdev is a VRF master and a corresponding
helper.

Signed-off-by: Ido Schimmel <redacted>
Signed-off-by: Jiri Pirko <redacted>
---
 drivers/net/vrf.c         | 2 +-
 include/linux/netdevice.h | 8 ++++++++
 2 files changed, 9 insertions(+), 1 deletion(-)
IFF_VRF_MASTER was renamed IFF_L3MDEV_MASTER 18 months ago.
But IFF_L3MDEV_MASTER isn't specific to the VRF driver. It can be set by
other drivers including future ones that might be introduced. I need to
allow enslavement to a VRF master, but reject others.
Why isn't an L3MDEV associated with a FIB table sufficient? ie., the
L3MDEV_MASTER flag is set and the driver impements l3mdev_fib_table. At
that point, what is specific to a VRF device that the offload relies on?
The one thing specific to the VRF driver is that it only does that. If
tomorrow a new driver is introduced and in addition to packet forwarding
according to l3mdev_fib_table it also does something else, then I want
to be sure mlxsw will be able to support it.

Current approach seems cleaner to me, but I don't mind dropping this
patch and introduce it when it's actually needed (if at all). OK?
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help