On 01/12/15 at 11:23am, Jesse Gross wrote: > On Mon, Jan 12, 2015 at 4:26 AM, Thomas Graf <tg...@suug.ch> wrote: > > diff --git a/drivers/net/vxlan.c b/drivers/net/vxlan.c > > index 4d52aa9..b148739 100644 > > --- a/drivers/net/vxlan.c > > +++ b/drivers/net/vxlan.c > > @@ -568,7 +569,8 @@ static struct sk_buff **vxlan_gro_receive(struct > > sk_buff **head, struct sk_buff > > continue; > > > > vh2 = (struct vxlanhdr *)(p->data + off_vx); > > - if (vh->vx_vni != vh2->vx_vni) { > > + if (vh->vx_flags != vh2->vx_flags || > > + vh->vx_vni != vh2->vx_vni) { > > It's probably better to do a memcmp over the entire header. There's no > guarantee that new fields will be entirely represented by flags.
vx_flags covers the entire first 32 bit of vxlanhdr so it's equivalent to a memcmp() already. I can change it to memcmp() if you think that's more readable. > > > diff --git a/net/openvswitch/vport-vxlan.c b/net/openvswitch/vport-vxlan.c > > index d7c46b3..dd68c97 100644 > > --- a/net/openvswitch/vport-vxlan.c > > +++ b/net/openvswitch/vport-vxlan.c > > @@ -146,6 +147,7 @@ static int vxlan_tnl_send(struct vport *vport, struct > > sk_buff *skb) > > struct vxlan_port *vxlan_port = vxlan_vport(vport); > > __be16 dst_port = inet_sk(vxlan_port->vs->sock->sk)->inet_sport; > > struct ovs_key_ipv4_tunnel *tun_key; > > + struct vxlan_metadata md; > > It might be a good idea to zero out 'md', even if not strictly required. Sure _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev