Hi Sairam, Sure, I will add the check to see if there are any geneve tunnel options and set OVS_TNL_F_GENEVE_OPT accordingly and send out v2 version of the patch.
Thanks, Anand Kumar On 10/19/17, 8:13 AM, "Sairam Venugopal" <[email protected]> wrote: Anand, Looks like Linux does make a check to see if there are any metadata present before setting these flags - https://github.com/openvswitch/ovs/blob/master/datapath/linux/compat/geneve.c#L239 Can you verify this and update the patch? (un-ack in meantime??) Thanks, Sairam On 10/18/17, 3:45 PM, "[email protected] on behalf of Sairam Venugopal" <[email protected] on behalf of [email protected]> wrote: >Thanks for fixing this. Should we check for geneveHdr->opts before setting OVS_TNL_F_GENEVE_OPT? > >I know the current code maintains consistency with Linux. But we need to understand if this is intended. > >Acked-by: Sairam Venugopal <[email protected]> > > > > > >On 10/17/17, 5:31 PM, "[email protected] on behalf of Anand Kumar" <[email protected] on behalf of [email protected]> wrote: > >>Set the geneve flags OVS_TNL_F_GENEVE_OPT and OVS_TNL_F_CRT_OPT >>in OvsDecapGeneve, so that windows behavior is similiar to linux >>https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_openvswitch_ovs_blob_master_datapath_linux_compat_geneve.c-23L242&d=DwICAg&c=uilaK90D4TOVoH58JNXRgQ&r=Z6vowHUOjP5ysP_g372c49Nqc1vEKqHKNBkR5Q5Z7uo&m=ntDbsrs3dZtqbGfAIQnQA7qzLK8SlLouMDV36u0JsGQ&s=TtHsQ-7YSUu8XJHpn4iiQkhaothJamn3dU7_FKuRptE&e= >> >>Signed-off-by: Anand Kumar <[email protected]> >>--- >> datapath-windows/ovsext/Geneve.c | 8 ++++---- >> 1 file changed, 4 insertions(+), 4 deletions(-) >> >>diff --git a/datapath-windows/ovsext/Geneve.c b/datapath-windows/ovsext/Geneve.c >>index 43374e2..77244b1 100644 >>--- a/datapath-windows/ovsext/Geneve.c >>+++ b/datapath-windows/ovsext/Geneve.c >>@@ -324,10 +324,10 @@ NDIS_STATUS OvsDecapGeneve(POVS_SWITCH_CONTEXT switchContext, >> status = STATUS_NDIS_INVALID_PACKET; >> goto dropNbl; >> } >>- tunKey->flags = OVS_TNL_F_KEY; >>- if (geneveHdr->oam) { >>- tunKey->flags |= OVS_TNL_F_OAM; >>- } >>+ /* Update tunnelKey flags. */ >>+ tunKey->flags = OVS_TNL_F_KEY | OVS_TNL_F_GENEVE_OPT | >>+ (geneveHdr->oam ? OVS_TNL_F_OAM : 0) | >>+ (geneveHdr->critical ? OVS_TNL_F_CRT_OPT : 0); >> tunKey->tunnelId = GENEVE_VNI_TO_TUNNELID(geneveHdr->vni); >> tunKey->tunOptLen = (uint8)geneveHdr->optLen * 4; >> if (tunKey->tunOptLen > TUN_OPT_MAX_LEN || >>-- >>2.9.3.windows.1 >> >>_______________________________________________ >>dev mailing list >>[email protected] >>https://urldefense.proofpoint.com/v2/url?u=https-3A__mail.openvswitch.org_mailman_listinfo_ovs-2Ddev&d=DwICAg&c=uilaK90D4TOVoH58JNXRgQ&r=Z6vowHUOjP5ysP_g372c49Nqc1vEKqHKNBkR5Q5Z7uo&m=ntDbsrs3dZtqbGfAIQnQA7qzLK8SlLouMDV36u0JsGQ&s=weAfeEKoncNrwUrh3c5va-Efy3yApbOLqPd2LZleZkM&e= >_______________________________________________ >dev mailing list >[email protected] >https://urldefense.proofpoint.com/v2/url?u=https-3A__mail.openvswitch.org_mailman_listinfo_ovs-2Ddev&d=DwICAg&c=uilaK90D4TOVoH58JNXRgQ&r=Z6vowHUOjP5ysP_g372c49Nqc1vEKqHKNBkR5Q5Z7uo&m=eMSUuuWxH9h1UeKSVIcTwgE8ktXUUIht3ybSd8WphY8&s=Y6LNJpoXU2BdIsXqef34Gk0al6E4EaHcbISPLhClhVc&e= _______________________________________________ dev mailing list [email protected] https://mail.openvswitch.org/mailman/listinfo/ovs-dev
