From 6ecfd91bc22d0ace741e20dd65154e9a7fcce3c5 Mon Sep 17 00:00:00 2001 From: Hari Date: Thu, 11 Feb 2016 21:18:52 +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: I030291f68c1e000bcd9c8acc98285805ce08c791 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) {