From e4899ad71b11574112fbbed7dba4b4e8d94bd61d Mon Sep 17 00:00:00 2001 From: Hari Date: Thu, 11 Feb 2016 21:23:33 +0530 Subject: [PATCH] Enqueue route updates in fabric route tables. There are still a couple of places where enqueue is happening in respective VRF route tables. As these may be deleted before the enqueued request is handled, always enqueue in fabric route table, which checks for the actual route table and invokes relevant operation. Change-Id: I66114f6272b6760620fc55ad429fcec4ec2f3042 closes-bug: 1544380 --- src/vnsw/agent/oper/inet_unicast_route.cc | 3 +-- src/vnsw/agent/oper/path_preference.cc | 4 ++-- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/src/vnsw/agent/oper/inet_unicast_route.cc b/src/vnsw/agent/oper/inet_unicast_route.cc index 50d42b6a735..5ebaa3770de 100644 --- a/src/vnsw/agent/oper/inet_unicast_route.cc +++ b/src/vnsw/agent/oper/inet_unicast_route.cc @@ -116,8 +116,7 @@ static void Inet4UnicastTableEnqueue(Agent *agent, DBRequest *req) { static void Inet6UnicastTableEnqueue(Agent *agent, const string &vrf_name, DBRequest *req) { - AgentRouteTable *table = - agent->vrf_table()->GetInet6UnicastRouteTable(vrf_name); + AgentRouteTable *table = agent->fabric_inet4_unicast_table(); if (table) { table->Enqueue(req); } diff --git a/src/vnsw/agent/oper/path_preference.cc b/src/vnsw/agent/oper/path_preference.cc index edf4764bc83..4ebfcb14765 100644 --- a/src/vnsw/agent/oper/path_preference.cc +++ b/src/vnsw/agent/oper/path_preference.cc @@ -392,9 +392,9 @@ void PathPreferenceSM::EnqueuePathChange() { AgentRouteTable *table = NULL; if (rt_->GetTableType() == Agent::EVPN) { - table = rt_->vrf()->GetEvpnRouteTable(); + table = agent_->fabric_evpn_table(); } else if (rt_->GetTableType() == Agent::INET4_UNICAST) { - table = rt_->vrf()->GetInet4UnicastRouteTable(); + table = agent_->fabric_inet4_unicast_table(); } if (table) {