From 3e73bee0277e1bb667e2276faa6b6b9ff6136c0d Mon Sep 17 00:00:00 2001 From: Divakar D Date: Mon, 4 Sep 2017 19:58:48 +0530 Subject: [PATCH] Change of flow key nh for link local For link local packets, the packet's nh is RCV NH. The flow key nh for these packets is chosen by Agent as nh of the interface of RCV NH. To match this flow key nh, Vrouter also started using this NH as flow key NH Change-Id: If29d3a6cc2ae8148d690cd204a6813fb76e9715b closes-bug: #1712934 --- dp-core/vr_proto_ip.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/dp-core/vr_proto_ip.c b/dp-core/vr_proto_ip.c index 473ed13a1..cacd17722 100644 --- a/dp-core/vr_proto_ip.c +++ b/dp-core/vr_proto_ip.c @@ -748,7 +748,8 @@ vr_inet_flow_nexthop(struct vr_packet *pkt, unsigned short vlan) if (vif_is_fabric(pkt->vp_if) && pkt->vp_nh) { /* this is more a requirement from agent */ - if ((pkt->vp_nh->nh_type == NH_ENCAP)) { + if ((pkt->vp_nh->nh_type == NH_ENCAP) || + (pkt->vp_nh->nh_type == NH_RCV)) { nh_id = pkt->vp_nh->nh_dev->vif_nh_id; } else { nh_id = pkt->vp_nh->nh_id;