src/dpdk/drivers/net/ice/base/ice_sched.c
void ice_sched_replay_agg(struct ice_hw *hw)
{
	struct ice_port_info *pi = hw->port_info;
	struct ice_sched_agg_info *agg_info;

	ice_acquire_lock(&pi->sched_lock);
	LIST_FOR_EACH_ENTRY(agg_info, &hw->agg_list, ice_sched_agg_info,
			    list_entry)
		/* replay aggregator (re-create aggregator node) */
		if (!ice_cmp_bitmap(agg_info->tc_bitmap,
				    agg_info->replay_tc_bitmap,
				    ICE_MAX_TRAFFIC_CLASS)) {
			ice_declare_bitmap(replay_bitmap,
					   ICE_MAX_TRAFFIC_CLASS);
			enum ice_status status;

			ice_zero_bitmap(replay_bitmap, ICE_MAX_TRAFFIC_CLASS);
			ice_sched_get_ena_tc_bitmap(pi,
						    agg_info->replay_tc_bitmap,
						    replay_bitmap);
			status = ice_sched_cfg_agg(hw->port_info,
						   agg_info->agg_id,
						   ICE_AGG_TYPE_AGG,
						   replay_bitmap);
			if (status) {
				ice_info(hw, "Replay agg id[%d] failed\n",
					 agg_info->agg_id);
				/* Move on to next one */
				continue;
			}
			/* Replay aggregator node BW (restore aggregator BW) */
			status = ice_sched_replay_agg_bw(hw, agg_info);
			if (status)
				ice_info(hw, "Replay agg bw [id=%d] failed\n",
					 agg_info->agg_id);
		}
	ice_release_lock(&pi->sched_lock);
}
/**
 * ice_sched_replay_agg - recreate aggregator node(s)
 * @hw: pointer to the HW struct
 *
 * This function recreate aggregator type nodes which are not replayed earlier.
 * It also replay aggregator BW information. These aggregator nodes are not
 * associated with VSI type node yet.
 */
recreate aggregator node(s)
@hw: pointer to the HW struct

This function recreate aggregator type nodes which are not replayed earlier.
It also replay aggregator BW information. These aggregator nodes are not
associated with VSI type node yet.
recreate aggregator node ( s ) @hw : pointer to the HW struct This function recreate aggregator type nodes which are not replayed earlier . It also replay aggregator BW information . These aggregator nodes are not associated with VSI type node yet .
void ice_sched_replay_agg(struct ice_hw *hw)
{
	struct ice_port_info *pi = hw->port_info;
	struct ice_sched_agg_info *agg_info;
	ice_acquire_lock(&pi->sched_lock);
	LIST_FOR_EACH_ENTRY(agg_info, &hw->agg_list, ice_sched_agg_info,
			    list_entry)
		if (!ice_cmp_bitmap(agg_info->tc_bitmap,
				    agg_info->replay_tc_bitmap,
				    ICE_MAX_TRAFFIC_CLASS)) {
			ice_declare_bitmap(replay_bitmap,
					   ICE_MAX_TRAFFIC_CLASS);
			enum ice_status status;
			ice_zero_bitmap(replay_bitmap, ICE_MAX_TRAFFIC_CLASS);
			ice_sched_get_ena_tc_bitmap(pi,
						    agg_info->replay_tc_bitmap,
						    replay_bitmap);
			status = ice_sched_cfg_agg(hw->port_info,
						   agg_info->agg_id,
						   ICE_AGG_TYPE_AGG,
						   replay_bitmap);
			if (status) {
				ice_info(hw, "Replay agg id[%d] failed\n",
					 agg_info->agg_id);
				continue;
			}
			status = ice_sched_replay_agg_bw(hw, agg_info);
			if (status)
				ice_info(hw, "Replay agg bw [id=%d] failed\n",
					 agg_info->agg_id);
		}
	ice_release_lock(&pi->sched_lock);
}
void ice_sched_replay_agg ( struct ice_hw * hw ) { struct ice_port_info * pi = hw -> port_info ; struct ice_sched_agg_info * agg_info ; ice_acquire_lock ( & pi -> sched_lock ) ; LIST_FOR_EACH_ENTRY ( agg_info , & hw -> agg_list , ice_sched_agg_info , list_entry ) if ( ! ice_cmp_bitmap ( agg_info -> tc_bitmap , agg_info -> replay_tc_bitmap , ICE_MAX_TRAFFIC_CLASS ) ) { ice_declare_bitmap ( replay_bitmap , ICE_MAX_TRAFFIC_CLASS ) ; enum ice_status status ; ice_zero_bitmap ( replay_bitmap , ICE_MAX_TRAFFIC_CLASS ) ; ice_sched_get_ena_tc_bitmap ( pi , agg_info -> replay_tc_bitmap , replay_bitmap ) ; status = ice_sched_cfg_agg ( hw -> port_info , agg_info -> agg_id , ICE_AGG_TYPE_AGG , replay_bitmap ) ; if ( status ) { ice_info ( hw , " \n " , agg_info -> agg_id ) ; continue ; } status = ice_sched_replay_agg_bw ( hw , agg_info ) ; if ( status ) ice_info ( hw , " \n " , agg_info -> agg_id ) ; } ice_release_lock ( & pi -> sched_lock ) ; }
ice_sched_replay_agg - recreate aggregator node(s)
 @hw: pointer to the HW struct
ice_sched_replay_agg - recreate aggregator node ( s ) @hw : pointer to the HW struct
/* replay aggregator (re-create aggregator node) */ /* Move on to next one */ /* Replay aggregator node BW (restore aggregator BW) */