@@ -442,24 +442,24 @@ void CrmOrch::getResAvailableCounters()
442442 continue ;
443443 }
444444
445- sai_attribute_t attr;
446- attr.id = crmResSaiAvailAttrMap.at (res.first );
447-
448- switch (attr.id )
445+ switch (res.first )
449446 {
450- case SAI_SWITCH_ATTR_AVAILABLE_IPV4_ROUTE_ENTRY :
451- case SAI_SWITCH_ATTR_AVAILABLE_IPV6_ROUTE_ENTRY :
452- case SAI_SWITCH_ATTR_AVAILABLE_IPV4_NEXTHOP_ENTRY :
453- case SAI_SWITCH_ATTR_AVAILABLE_IPV6_NEXTHOP_ENTRY :
454- case SAI_SWITCH_ATTR_AVAILABLE_IPV4_NEIGHBOR_ENTRY :
455- case SAI_SWITCH_ATTR_AVAILABLE_IPV6_NEIGHBOR_ENTRY :
456- case SAI_SWITCH_ATTR_AVAILABLE_NEXT_HOP_GROUP_MEMBER_ENTRY :
457- case SAI_SWITCH_ATTR_AVAILABLE_NEXT_HOP_GROUP_ENTRY :
458- case SAI_SWITCH_ATTR_AVAILABLE_FDB_ENTRY :
459- case SAI_SWITCH_ATTR_AVAILABLE_IPMC_ENTRY :
460- case SAI_SWITCH_ATTR_AVAILABLE_SNAT_ENTRY :
461- case SAI_SWITCH_ATTR_AVAILABLE_DNAT_ENTRY :
447+ case CrmResourceType::CRM_IPV4_ROUTE :
448+ case CrmResourceType::CRM_IPV6_ROUTE :
449+ case CrmResourceType::CRM_IPV4_NEXTHOP :
450+ case CrmResourceType::CRM_IPV6_NEXTHOP :
451+ case CrmResourceType::CRM_IPV4_NEIGHBOR :
452+ case CrmResourceType::CRM_IPV6_NEIGHBOR :
453+ case CrmResourceType::CRM_NEXTHOP_GROUP_MEMBER :
454+ case CrmResourceType::CRM_NEXTHOP_GROUP :
455+ case CrmResourceType::CRM_FDB_ENTRY :
456+ case CrmResourceType::CRM_IPMC_ENTRY :
457+ case CrmResourceType::CRM_SNAT_ENTRY :
458+ case CrmResourceType::CRM_DNAT_ENTRY :
462459 {
460+ sai_attribute_t attr;
461+ attr.id = crmResSaiAvailAttrMap.at (res.first );
462+
463463 sai_status_t status = sai_switch_api->get_switch_attribute (gSwitchId , 1 , &attr);
464464 if (status != SAI_STATUS_SUCCESS)
465465 {
@@ -482,9 +482,12 @@ void CrmOrch::getResAvailableCounters()
482482 break ;
483483 }
484484
485- case SAI_SWITCH_ATTR_AVAILABLE_ACL_TABLE :
486- case SAI_SWITCH_ATTR_AVAILABLE_ACL_TABLE_GROUP :
485+ case CrmResourceType::CRM_ACL_TABLE :
486+ case CrmResourceType::CRM_ACL_GROUP :
487487 {
488+ sai_attribute_t attr;
489+ attr.id = crmResSaiAvailAttrMap.at (res.first );
490+
488491 vector<sai_acl_resource_t > resources (CRM_ACL_RESOURCE_COUNT);
489492
490493 attr.value .aclresource .count = CRM_ACL_RESOURCE_COUNT;
@@ -512,9 +515,12 @@ void CrmOrch::getResAvailableCounters()
512515 break ;
513516 }
514517
515- case SAI_ACL_TABLE_ATTR_AVAILABLE_ACL_ENTRY :
516- case SAI_ACL_TABLE_ATTR_AVAILABLE_ACL_COUNTER :
518+ case CrmResourceType::CRM_ACL_ENTRY :
519+ case CrmResourceType::CRM_ACL_COUNTER :
517520 {
521+ sai_attribute_t attr;
522+ attr.id = crmResSaiAvailAttrMap.at (res.first );
523+
518524 for (auto &cnt : res.second .countersMap )
519525 {
520526 sai_status_t status = sai_acl_api->get_acl_table_attribute (cnt.second .id , 1 , &attr);
@@ -531,7 +537,7 @@ void CrmOrch::getResAvailableCounters()
531537 }
532538
533539 default :
534- SWSS_LOG_ERROR (" Failed to get CRM attribute %u. Unknown attribute .\n " , attr. id );
540+ SWSS_LOG_ERROR (" Failed to get CRM resource type %u. Unknown resource type .\n " , ( uint32_t )res. first );
535541 return ;
536542 }
537543 }
0 commit comments