@@ -229,7 +229,10 @@ const vector<sai_port_stat_t> port_stat_ids =
229229 SAI_PORT_STAT_ETHER_STATS_JABBERS,
230230 SAI_PORT_STAT_ETHER_STATS_FRAGMENTS,
231231 SAI_PORT_STAT_ETHER_STATS_UNDERSIZE_PKTS,
232- SAI_PORT_STAT_IP_IN_RECEIVES
232+ SAI_PORT_STAT_IP_IN_RECEIVES,
233+ SAI_PORT_STAT_IF_IN_FEC_CORRECTABLE_FRAMES,
234+ SAI_PORT_STAT_IF_IN_FEC_NOT_CORRECTABLE_FRAMES,
235+ SAI_PORT_STAT_IF_IN_FEC_SYMBOL_ERRORS
233236};
234237
235238const vector<sai_port_stat_t > port_buffer_drop_stat_ids =
@@ -4655,7 +4658,7 @@ bool PortsOrch::addVlanFloodGroups(Port &vlan, Port &port, string end_point_ip)
46554658 if (vlan.m_vlan_info .l2mc_group_id == SAI_NULL_OBJECT_ID)
46564659 {
46574660 status = sai_l2mc_group_api->create_l2mc_group (&l2mc_group_id, gSwitchId , 0 , NULL );
4658- if (status != SAI_STATUS_SUCCESS)
4661+ if (status != SAI_STATUS_SUCCESS)
46594662 {
46604663 SWSS_LOG_ERROR (" Failed to create l2mc flood group" );
46614664 return false ;
@@ -4669,7 +4672,7 @@ bool PortsOrch::addVlanFloodGroups(Port &vlan, Port &port, string end_point_ip)
46694672 status = sai_vlan_api->set_vlan_attribute (vlan.m_vlan_info .vlan_oid , &attr);
46704673 if (status != SAI_STATUS_SUCCESS)
46714674 {
4672- SWSS_LOG_ERROR (" Failed to set l2mc group %" PRIx64
4675+ SWSS_LOG_ERROR (" Failed to set l2mc group %" PRIx64
46734676 " to vlan %hu for unknown unicast flooding" ,
46744677 l2mc_group_id, vlan.m_vlan_info .vlan_id );
46754678 return false ;
@@ -4684,15 +4687,15 @@ bool PortsOrch::addVlanFloodGroups(Port &vlan, Port &port, string end_point_ip)
46844687 if (status != SAI_STATUS_SUCCESS)
46854688 {
46864689 SWSS_LOG_ERROR (" Failed to set l2mc group %" PRIx64
4687- " to vlan %hu for broadcast flooding" ,
4690+ " to vlan %hu for broadcast flooding" ,
46884691 l2mc_group_id, vlan.m_vlan_info .vlan_id );
46894692 return false ;
46904693 }
46914694 }
46924695 vlan.m_vlan_info .l2mc_group_id = l2mc_group_id;
46934696 m_portList[vlan.m_alias ] = vlan;
46944697 }
4695-
4698+
46964699 vector<sai_attribute_t > attrs;
46974700 attr.id = SAI_L2MC_GROUP_MEMBER_ATTR_L2MC_GROUP_ID;
46984701 attr.value .oid = vlan.m_vlan_info .l2mc_group_id ;
@@ -4740,10 +4743,10 @@ bool PortsOrch::removeVlanEndPointIp(Port &vlan, Port &port, string end_point_ip
47404743 SWSS_LOG_ENTER ();
47414744
47424745 sai_status_t status;
4743-
4746+
47444747 if (vlan.m_vlan_info .l2mc_members .find (end_point_ip) == vlan.m_vlan_info .l2mc_members .end ())
47454748 {
4746- SWSS_LOG_NOTICE (" End point ip %s is not part of vlan %hu" ,
4749+ SWSS_LOG_NOTICE (" End point ip %s is not part of vlan %hu" ,
47474750 end_point_ip.c_str (), vlan.m_vlan_info .vlan_id );
47484751 return true ;
47494752 }
@@ -4759,7 +4762,7 @@ bool PortsOrch::removeVlanEndPointIp(Port &vlan, Port &port, string end_point_ip
47594762 vlan.m_vlan_info .l2mc_members .erase (end_point_ip);
47604763 sai_object_id_t l2mc_group_id = SAI_NULL_OBJECT_ID;
47614764 sai_attribute_t attr;
4762-
4765+
47634766 if (vlan.m_vlan_info .l2mc_members .empty ())
47644767 {
47654768 if (vlan.m_vlan_info .uuc_flood_type == SAI_VLAN_FLOOD_CONTROL_TYPE_COMBINED)
@@ -4770,7 +4773,7 @@ bool PortsOrch::removeVlanEndPointIp(Port &vlan, Port &port, string end_point_ip
47704773 status = sai_vlan_api->set_vlan_attribute (vlan.m_vlan_info .vlan_oid , &attr);
47714774 if (status != SAI_STATUS_SUCCESS)
47724775 {
4773- SWSS_LOG_ERROR (" Failed to set null l2mc group "
4776+ SWSS_LOG_ERROR (" Failed to set null l2mc group "
47744777 " to vlan %hu for unknown unicast flooding" ,
47754778 vlan.m_vlan_info .vlan_id );
47764779 return false ;
@@ -4796,7 +4799,7 @@ bool PortsOrch::removeVlanEndPointIp(Port &vlan, Port &port, string end_point_ip
47964799 if (status != SAI_STATUS_SUCCESS)
47974800 {
47984801 SWSS_LOG_ERROR (" Failed to set null l2mc group "
4799- " to vlan %hu for broadcast flooding" ,
4802+ " to vlan %hu for broadcast flooding" ,
48004803 vlan.m_vlan_info .vlan_id );
48014804 return false ;
48024805 }
0 commit comments