On 11/14/18 1:31 AM, Alexis Bauvin wrote: > diff --git a/drivers/net/vxlan.c b/drivers/net/vxlan.c > index 7477b5510a04..188c0cdb8838 100644 > --- a/drivers/net/vxlan.c > +++ b/drivers/net/vxlan.c > @@ -208,6 +208,18 @@ static inline struct vxlan_rdst > *first_remote_rtnl(struct vxlan_fdb *fdb) > return list_first_entry(&fdb->remotes, struct vxlan_rdst, list); > } > > +static int vxlan_is_in_l3mdev_chain(struct net_device *chain, > + struct net_device *dev) > +{ > + if (!chain) > + return 0; > + > + if (chain->ifindex == dev->ifindex) > + return 1; > + return vxlan_is_in_l3mdev_chain(netdev_master_upper_dev_get(chain), > + dev);
l3mdev_master_dev_rcu