On Wed, Jan 14, 2015 at 4:23 PM, Thomas Graf <tg...@suug.ch> wrote: > On 01/14/15 at 04:18pm, Tom Herbert wrote: >> > diff --git a/drivers/net/vxlan.c b/drivers/net/vxlan.c >> > index 99df0d7..06f7196 100644 >> > --- a/drivers/net/vxlan.c >> > +++ b/drivers/net/vxlan.c >> > @@ -126,6 +126,7 @@ struct vxlan_dev { >> > __u8 tos; /* TOS override */ >> > __u8 ttl; >> > u32 flags; /* VXLAN_F_* in vxlan.h */ >> > + u32 exts; /* Enabled extensions */ >> > >> >> Thomas, why not just make a VXAM_F_GPB flag? Then this setting can be >> saved in the flags for vxlan_dev and vxlan_sock so no exts field. > > Because we need to compare enabled extensions in vxlan_find_sock() to > make sure we are not sharing a VXLAN socket with extensions enabled > with a user which does not have the same extensions enabled. > > However, we do not want vxlan_find_sock() to compare all flags. > > So we need a bitmap that is ignored during the share check (flags) and > a bitmap that must match to allow sharing (exts). > > The RCO extension is currently suffering from this bug which is causing > a compatibility issue. I explained in the thread of your patch. I was > under the imrpession that you would either send a v2 or fix it in a > follow-up.
As I mentioned, we would also need to match receive checksum settings which is not appropriately called an extension. A mask of interesting flags could be used to do the comparison in vxlan_find_sock. _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev