During vswitchd boot up kernel is receiving FLOW_ADD commands without ETHERTYPE attribute. Added additional check for the same in this patch.
Signed-off-by: Ankur Sharma <ankursha...@vmware.com> --- datapath-windows/ovsext/Flow.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/datapath-windows/ovsext/Flow.c b/datapath-windows/ovsext/Flow.c index 5ed5c18..b55263b 100644 --- a/datapath-windows/ovsext/Flow.c +++ b/datapath-windows/ovsext/Flow.c @@ -1238,8 +1238,14 @@ _MapKeyAttrToFlowPut(PNL_ATTR *keyAttrs, RtlCopyMemory(destKey->l2.dlSrc, eth_key->eth_src, ETH_ADDR_LEN); RtlCopyMemory(destKey->l2.dlDst, eth_key->eth_dst, ETH_ADDR_LEN); + /* TODO: Ideally ETHERTYPE should not be optional. + * But during vswitchd bootup we are seeing FLOW_ADD + * requests with no ETHERTYPE attributes. + * Need to verify this. */ + if (keyAttrs[OVS_KEY_ATTR_ETHERTYPE]) { destKey->l2.dlType = ntohs((NlAttrGetU16(keyAttrs - [OVS_KEY_ATTR_ETHERTYPE]))); + [OVS_KEY_ATTR_ETHERTYPE]))); + } if (keyAttrs[OVS_KEY_ATTR_VLAN]) { destKey->l2.vlanTci = NlAttrGetU16(keyAttrs -- 1.9.1 _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev