Skip to content
18 changes: 17 additions & 1 deletion cfgmgr/vlanmgr.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -221,7 +221,17 @@ bool VlanMgr::addHostVlanMember(int vlan_id, const string &port_alias, const str
cmds << BASH_CMD " -c " << shellquote(inner.str());

std::string res;
EXEC_WITH_ERROR_THROW(cmds.str(), res);
try
{
EXEC_WITH_ERROR_THROW(cmds.str(), res);
}
catch (const std::runtime_error& e)
{
if (!isMemberStateOk(port_alias))
return false;
else
EXEC_WITH_ERROR_THROW(cmds.str(), res);
}

return true;
}
Expand Down Expand Up @@ -632,6 +642,12 @@ void VlanMgr::doVlanMemberTask(Consumer &consumer)

m_vlanMemberReplay.erase(kfvKey(t));
}
else
{
SWSS_LOG_INFO("Netdevice for %s not ready, delaying", kfvKey(t).c_str());
it++;
continue;
}
}
else if (op == DEL_COMMAND)
{
Expand Down
2 changes: 1 addition & 1 deletion orchagent/Makefile.am
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ swssdir = $(datadir)/swss
dist_swss_DATA = \
eliminate_events.lua \
rif_rates.lua \
pfc_detect_innovium.lua \
pfc_detect_marvell_teralynx.lua \
pfc_detect_mellanox.lua \
pfc_detect_broadcom.lua \
pfc_detect_marvell.lua \
Expand Down
Loading