From 7f59f07224bed82e2fe8feb14da9c6816ed57638 Mon Sep 17 00:00:00 2001 From: Wenda Ni Date: Wed, 6 Nov 2019 03:01:45 +0000 Subject: [PATCH] Address comments: Handling all default values for fields at the IntfMgr level Signed-off-by: Wenda Ni --- cfgmgr/intfmgr.cpp | 13 ++++++++++++- orchagent/intfsorch.cpp | 7 ++----- 2 files changed, 14 insertions(+), 6 deletions(-) diff --git a/cfgmgr/intfmgr.cpp b/cfgmgr/intfmgr.cpp index ee1e2320f5..2e50472468 100644 --- a/cfgmgr/intfmgr.cpp +++ b/cfgmgr/intfmgr.cpp @@ -287,7 +287,7 @@ bool IntfMgr::doIntfGeneralTask(const vector& keys, string vrf_name = ""; uint32_t mtu = 0; - string adminStatus = "up"; + string adminStatus = ""; for (auto idx : data) { const auto &field = fvField(idx); @@ -356,7 +356,18 @@ bool IntfMgr::doIntfGeneralTask(const vector& keys, return false; } } + else + { + FieldValueTuple fvTuple("mtu", std::to_string(mtu)); + data.push_back(fvTuple); + } + if (adminStatus.empty()) + { + adminStatus = "up"; + FieldValueTuple fvTuple("admin_status", adminStatus); + data.push_back(fvTuple); + } try { setHostSubIntfAdminStatus(subIntfAlias, adminStatus); diff --git a/orchagent/intfsorch.cpp b/orchagent/intfsorch.cpp index 61461c0289..1992c0ccdf 100644 --- a/orchagent/intfsorch.cpp +++ b/orchagent/intfsorch.cpp @@ -377,8 +377,8 @@ void IntfsOrch::doTask(Consumer &consumer) const vector& data = kfvFieldsValues(t); string vrf_name = "", vnet_name = ""; - uint32_t mtu = 0; - bool adminUp = true; + uint32_t mtu; + bool adminUp; for (auto idx : data) { const auto &field = fvField(idx); @@ -407,9 +407,6 @@ void IntfsOrch::doTask(Consumer &consumer) SWSS_LOG_ERROR("Out of range argument %s to %s()", value.c_str(), e.what()); continue; } - - // Inherit mtu from parent port or port channel - mtu = 0; } else if (field == "admin_status") {