David Ahern <d...@cumulusnetworks.com> wrote: > As Eric noted netif_index_is_vrf is not called with rcu_read_lock held, > so use dev_get_by_index instead of dev_get_by_index_rcu. > > If VRF is not enabled or oif is 0 skip the device lookup. > > Signed-off-by: David Ahern <d...@cumulusnetworks.com>
Why not > static inline bool netif_index_is_vrf(struct net *net, int ifindex) > { > - struct net_device *dev = dev_get_by_index_rcu(net, ifindex); > bool rc = false; > > - if (dev) > - rc = netif_is_vrf(dev); > +#if IS_ENABLED(CONFIG_NET_VRF) > + struct net_device *dev; > + > + if (ifindex == 0) > + return false; rcu_read_lock(); dev = dev_get_by_index_rcu(net, ifindex); if (dev) rc = netif_is_vrf(dev); rcu_read_unlock(); > +#endif > return rc; instead? -- 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