On Thu, Jul 7, 2016 at 6:27 PM, Jesse Gross <je...@kernel.org> wrote: > On Thu, Jul 7, 2016 at 5:23 PM, Pravin B Shelar <pshe...@ovn.org> wrote: >> diff --git a/datapath/linux/compat/dev-openvswitch.c >> b/datapath/linux/compat/dev-openvswitch.c >> index 0d2088b..544c5e1 100644 >> --- a/datapath/linux/compat/dev-openvswitch.c >> +++ b/datapath/linux/compat/dev-openvswitch.c >> +#ifndef HAVE_NDO_FILL_METADATA_DST >> +int ovs_dev_fill_metadata_dst(struct net_device *dev, struct sk_buff *skb) >> +{ >> + struct ip_tunnel_info *info; >> + struct vport *vport; >> + >> + vport = ovs_netdev_get_vport(dev); >> + if (!vport) >> + return -EINVAL; >> + >> + if (!vport->ops->fill_metadata_dst) >> + return -EINVAL; >> + >> + info = skb_tunnel_info(skb); > > I just noticed that the upstream version of this function makes a copy > of the ip_tunnel_info but this just accesses it, which will presumably > result in writing directly on the original in the set tunnel action. > That's not good but I guess is OK if the fields are essentially > garbage to start off with (like the UDP source port). However, it > seems like there will be issues if multiple sample actions run > concurrently.
Good catch. Now this patch and dst-cache patch needs review, so I will only send these two patch out for review. _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev