Lines Matching full:children
32 root->children = devm_kcalloc(ice_hw_to_dev(hw), hw->max_children[0], in ice_sched_add_root_node()
34 if (!root->children) { in ice_sched_add_root_node()
64 /* The node has no children or is at the max layer */ in ice_sched_find_node_by_teid()
70 /* Check if TEID matches to any of the children nodes */ in ice_sched_find_node_by_teid()
72 if (ICE_TXSCHED_GET_NODE_TEID(start_node->children[i]) == teid) in ice_sched_find_node_by_teid()
73 return start_node->children[i]; in ice_sched_find_node_by_teid()
79 tmp = ice_sched_find_node_by_teid(start_node->children[i], in ice_sched_find_node_by_teid()
190 node->children = devm_kcalloc(ice_hw_to_dev(hw), in ice_sched_add_node()
193 if (!node->children) { in ice_sched_add_node()
202 parent->children[parent->num_children++] = node; in ice_sched_add_node()
287 if (pi->root->children[i]->tc_num == tc) in ice_sched_get_tc_node()
288 return pi->root->children[i]; in ice_sched_get_tc_node()
307 /* Free the children before freeing up the parent node in ice_free_sched_node()
309 * in the array. So always pick the first child if num children > 0 in ice_free_sched_node()
312 ice_free_sched_node(pi, node->children[0]); in ice_free_sched_node()
330 if (parent->children[i] == node) { in ice_free_sched_node()
332 parent->children[j - 1] = in ice_free_sched_node()
333 parent->children[j]; in ice_free_sched_node()
353 devm_kfree(ice_hw_to_dev(hw), node->children); in ice_free_sched_node()
1021 /* max children per node per layer */ in ice_sched_add_nodes_to_hw_layer()
1024 /* current number of children + required nodes exceed max children */ in ice_sched_add_nodes_to_hw_layer()
1083 /* Exceeded the max children */ in ice_sched_add_nodes_to_layer()
1177 node = node->children[0]; in ice_rm_dflt_leaf_node()
1215 node = node->children[0]; in ice_sched_rm_dflt_nodes()
1353 /* max sibling group size of current layer refers to the max children in ice_sched_query_res_alloc()
1355 * layer 1 node max children will be layer 2 max sibling group size in ice_sched_query_res_alloc()
1356 * layer 2 node max children will be layer 3 max sibling group size in ice_sched_query_res_alloc()
1358 * qgroup layer 7. Leaf node has no children. in ice_sched_query_res_alloc()
1434 struct ice_sched_node *child = base->children[i]; in ice_sched_find_node_in_subtree()
1477 * minimum number of children. This way all queue group nodes get in ice_sched_get_free_qgrp()
1489 /* break if it has no children, */ in ice_sched_get_free_qgrp()
1681 parent = parent->children[0]; in ice_sched_add_vsi_child_nodes()
1708 /* Add intermediate nodes if TC has no children and in ice_sched_calc_vsi_support_nodes()
1714 /* If intermediate nodes are reached max children in ice_sched_calc_vsi_support_nodes()
1776 parent = parent->children[0]; in ice_sched_add_vsi_support_nodes()
2008 if (ice_sched_is_leaf_node_present(node->children[i])) in ice_sched_is_leaf_node_present()
2015 * ice_sched_rm_vsi_cfg - remove the VSI and its children nodes
2020 * This function removes the VSI and its LAN or RDMA children nodes from the
2056 if (vsi_node->children[j]->owner == owner) { in ice_sched_rm_vsi_cfg()
2057 ice_free_sched_node(pi, vsi_node->children[j]); in ice_sched_rm_vsi_cfg()
2060 * children will be updated after node removal in ice_sched_rm_vsi_cfg()
2067 /* remove the VSI if it has no children */ in ice_sched_rm_vsi_cfg()
2088 * ice_rm_vsi_lan_cfg - remove VSI and its LAN children nodes
2092 * This function clears the VSI and its LAN children nodes from scheduler tree
2101 * ice_rm_vsi_rdma_cfg - remove VSI and its RDMA children nodes
2105 * This function clears the VSI and its RDMA children nodes from scheduler tree
2167 parent = ice_sched_get_free_vsi_parent(hw, node->children[i], in ice_sched_get_free_vsi_parent()
2193 /* update the old parent children */ in ice_sched_update_parent()
2195 if (old_parent->children[i] == node) { in ice_sched_update_parent()
2197 old_parent->children[j - 1] = in ice_sched_update_parent()
2198 old_parent->children[j]; in ice_sched_update_parent()
2204 new_parent->children[new_parent->num_children++] = node; in ice_sched_update_parent()
2310 agg_node->children[i], in ice_sched_move_vsi_to_agg()
2333 parent = parent->children[0]; in ice_sched_move_vsi_to_agg()
2402 if (ice_sched_is_agg_inuse(pi, node->children[i])) in ice_sched_is_agg_inuse()
2433 /* Can't remove the aggregator node if it has children */ in ice_sched_rm_agg_cfg()
2590 parent = parent->children[0]; in ice_sched_add_agg_cfg()
3421 return node->children[0]; in ice_sched_get_srl_node()