| /dpdk/drivers/net/mvpp2/ |
| H A D | mrvl_flow.c | 205 key_field = &flow->rule.fields[flow->rule.num_fields]; in mrvl_parse_mac() 274 key_field = &flow->rule.fields[flow->rule.num_fields]; in mrvl_parse_type() 310 key_field = &flow->rule.fields[flow->rule.num_fields]; in mrvl_parse_vlan_id() 346 key_field = &flow->rule.fields[flow->rule.num_fields]; in mrvl_parse_vlan_pri() 382 key_field = &flow->rule.fields[flow->rule.num_fields]; in mrvl_parse_ip4_dscp() 438 key_field = &flow->rule.fields[flow->rule.num_fields]; in mrvl_parse_ip4_addr() 504 key_field = &flow->rule.fields[flow->rule.num_fields]; in mrvl_parse_ip4_proto() 1468 flow->table_key.num_fields = flow->rule.num_fields; in mrvl_flow_parse_pattern() 1499 flow->action.cos = &flow->cos; in mrvl_flow_parse_actions() 1537 flow->action.cos = &flow->cos; in mrvl_flow_parse_actions() [all …]
|
| /dpdk/drivers/net/mlx4/ |
| H A D | mlx4_flow.c | 914 *addr = flow; in mlx4_flow_prepare() 1407 flow && flow->internal; in mlx4_flow_internal() 1408 flow = LIST_NEXT(flow, next)) { in mlx4_flow_internal() 1441 if (!flow || !flow->internal) { in mlx4_flow_internal() 1463 flow && flow->internal; in mlx4_flow_internal() 1464 flow = LIST_NEXT(flow, next)) { in mlx4_flow_internal() 1474 if (flow && flow->internal) { in mlx4_flow_internal() 1481 if (!flow || !flow->internal) { in mlx4_flow_internal() 1499 MLX4_ASSERT(flow->promisc || flow->allmulti); in mlx4_flow_internal() 1505 while (flow && flow->internal) { in mlx4_flow_internal() [all …]
|
| /dpdk/examples/qos_sched/ |
| H A D | main.c | 55 flow->rx_thread.rx_port = flow->rx_port; in app_main_loop() 56 flow->rx_thread.rx_ring = flow->rx_ring; in app_main_loop() 57 flow->rx_thread.rx_queue = flow->rx_queue; in app_main_loop() 58 flow->rx_thread.sched_port = flow->sched_port; in app_main_loop() 65 flow->tx_thread.tx_port = flow->tx_port; in app_main_loop() 66 flow->tx_thread.tx_ring = flow->tx_ring; in app_main_loop() 67 flow->tx_thread.tx_queue = flow->tx_queue; in app_main_loop() 74 flow->wt_thread.rx_ring = flow->rx_ring; in app_main_loop() 75 flow->wt_thread.tx_ring = flow->tx_ring; in app_main_loop() 76 flow->wt_thread.tx_port = flow->tx_port; in app_main_loop() [all …]
|
| /dpdk/drivers/net/failsafe/ |
| H A D | failsafe_flow.c | 23 struct rte_flow *flow; in fs_flow_allocate() local 41 if (flow == NULL) { in fs_flow_allocate() 51 rte_free(flow); in fs_flow_allocate() 54 return flow; in fs_flow_allocate() 60 rte_free(*flow); in fs_flow_release() 61 *flow = NULL; in fs_flow_release() 99 struct rte_flow *flow; in fs_flow_create() local 115 return flow; in fs_flow_create() 122 fs_flow_release(&flow); in fs_flow_create() 136 if (flow == NULL) { in fs_flow_destroy() [all …]
|
| /dpdk/drivers/common/cnxk/ |
| H A D | roc_npc.c | 386 flow->ctr_id = 1; in npc_parse_actions() 655 pst->flow = flow; in npc_parse_pattern() 1224 flow = plt_zmalloc(sizeof(*flow), 0); in roc_npc_flow_create() 1225 if (flow == NULL) { in roc_npc_flow_create() 1229 memset(flow, 0, sizeof(*flow)); in roc_npc_flow_create() 1263 return flow; in roc_npc_flow_create() 1268 return flow; in roc_npc_flow_create() 1274 plt_free(flow); in roc_npc_flow_create() 1278 plt_free(flow); in roc_npc_flow_create() 1331 TAILQ_REMOVE(&npc->flow_list[flow->priority], flow, next); in roc_npc_flow_destroy() [all …]
|
| H A D | roc_npc_mcam_dump.c | 120 bytes = (uint8_t *)flow->mcam_data; in npc_get_nibbles() 141 data = npc_get_nibbles(flow, 3, offset); in npc_flow_print_parse_nibbles() 147 data = npc_get_nibbles(flow, 1, offset); in npc_flow_print_parse_nibbles() 153 data = npc_get_nibbles(flow, 2, offset); in npc_flow_print_parse_nibbles() 159 data = npc_get_nibbles(flow, 1, offset); in npc_flow_print_parse_nibbles() 328 intf = flow->nix_intf; in npc_flow_dump_patterns() 333 lid = flow->dump_data[i].lid; in npc_flow_dump_patterns() 334 ltype = flow->dump_data[i].ltype; in npc_flow_dump_patterns() 586 struct roc_npc_flow *flow) in roc_npc_flow_mcam_dump() argument 594 flow->nix_intf); in roc_npc_flow_mcam_dump() [all …]
|
| H A D | roc_npc_mcam.c | 631 flow->mcam_id = entry; in npc_mcam_alloc_and_write() 634 flow->ctr_id = ctr; in npc_mcam_alloc_and_write() 650 pst->flow->mcam_data[0] &= mask; in npc_set_vlan_ltype() 651 pst->flow->mcam_mask[0] &= mask; in npc_set_vlan_ltype() 656 pst->flow->mcam_data[0] |= val; in npc_set_vlan_ltype() 678 pst->flow->mcam_data[0] |= val; in npc_set_ipv6ext_ltype_mask() 708 int intf = pst->flow->nix_intf; in npc_program_mcam() 809 struct roc_npc_flow *flow; in npc_flow_enable_all_entries() local 816 flow->enable = enable; in npc_flow_enable_all_entries() 828 struct roc_npc_flow *flow; in npc_flow_free_all_resources() local [all …]
|
| H A D | roc_npc_utils.c | 260 dump = &pst->flow->dump_data[pst->flow->num_patterns++]; in npc_update_parse_state() 292 if (flow->nix_intf == NIX_INTF_RX) { in npc_initialise_mcam_entry() 358 from_mcam_id = curr->flow->mcam_id; in npc_slide_mcam_entries() 376 curr->flow->mcam_id = to_mcam_id; in npc_slide_mcam_entries() 549 if (entry->flow->mcam_id > curr->flow->mcam_id) in npc_insert_into_flow_list() 599 int prio_idx = flow->priority; in npc_find_mcam_ref_entry() 607 *ref_entry = head->flow->mcam_id; in npc_find_mcam_ref_entry() 613 prio_idx = flow->priority; in npc_find_mcam_ref_entry() 671 new_entry->flow = flow; in npc_get_free_mcam_entry() 681 flow->mcam_id = rsp_local.entry; in npc_get_free_mcam_entry() [all …]
|
| /dpdk/drivers/net/bonding/ |
| H A D | rte_eth_bond_flow.c | 21 struct rte_flow *flow; in bond_flow_alloc() local 49 rte_free(flow); in bond_flow_alloc() 52 return flow; in bond_flow_alloc() 58 rte_free(*flow); in bond_flow_release() 59 *flow = NULL; in bond_flow_release() 91 struct rte_flow *flow; in bond_flow_create() local 110 return flow; in bond_flow_create() 118 bond_flow_release(&flow); in bond_flow_create() 136 flow->flows[i], err); in bond_flow_destroy() 144 bond_flow_release(&flow); in bond_flow_destroy() [all …]
|
| /dpdk/drivers/net/dpaa2/ |
| H A D | dpaa2_flow.c | 300 log_info, qos_index, flow->tc_id, flow->qos_real_key_size); in dpaa2_flow_qos_entry_log() 328 log_info, flow->tc_index, flow->tc_id, flow->fs_real_key_size); in dpaa2_flow_fs_entry_log() 1327 &flow->fs_rule, in dpaa2_configure_flow_vlan() 3704 flow->tc_id, flow->tc_index, in dpaa2_generic_flow_set() 3795 &flow->qos_rule, flow->tc_id, in dpaa2_generic_flow_set() 4008 if (!flow) { in dpaa2_flow_create() 4067 return flow; in dpaa2_flow_create() 4106 flow->tc_id, &flow->fs_rule); in dpaa2_flow_destroy() 4137 rte_free(flow); in dpaa2_flow_destroy() 4162 while (flow) { in dpaa2_flow_flush() [all …]
|
| /dpdk/drivers/net/tap/ |
| H A D | tap_flow.c | 523 struct rte_flow *flow = info->flow; in tap_flow_create_eth() local 537 if (!flow) in tap_flow_create_eth() 577 struct rte_flow *flow = info->flow; in tap_flow_create_vlan() local 596 if (!flow) in tap_flow_create_vlan() 637 struct rte_flow *flow = info->flow; in tap_flow_create_ipv4() local 692 struct rte_flow *flow = info->flow; in tap_flow_create_ipv6() local 748 struct rte_flow *flow = info->flow; in tap_flow_create_udp() local 794 struct rte_flow *flow = info->flow; in tap_flow_create_tcp() local 1040 .flow = flow, in priv_flow_process() 1251 if (flow) in priv_flow_process() [all …]
|
| /dpdk/lib/acl/ |
| H A D | acl_run_avx512_common.h | 121 sizeof(flow->trans[0])); in _F_() 125 sizeof(flow->trans[0])); in _F_() 142 div = (const int32_t *)flow->data_index; in _F_() 201 flow->idata + flow->num_packets); in _F_() 203 flow->idata + flow->num_packets + n); in _F_() 217 flow->num_packets += num; in _F_() 250 res, sizeof(flow->matches[0])); in _F_() 253 n = update_flow_mask(flow, fmsk, rmsk); in _F_() 288 rm[0], &di[0], flow->first_load_sz); in _F_() 347 flow->first_load_sz); in _F_() [all …]
|
| H A D | acl_run_avx512.c | 22 acl_set_flow_avx512(struct acl_flow_avx512 *flow, const struct rte_acl_ctx *ctx, in acl_set_flow_avx512() argument 26 flow->num_packets = 0; in acl_set_flow_avx512() 27 flow->total_packets = total_packets; in acl_set_flow_avx512() 28 flow->first_load_sz = ctx->first_load_sz; in acl_set_flow_avx512() 29 flow->root_index = ctx->trie[trie].root_index; in acl_set_flow_avx512() 30 flow->trans = ctx->trans_table; in acl_set_flow_avx512() 31 flow->data_index = ctx->trie[trie].data_index; in acl_set_flow_avx512() 32 flow->idata = data; in acl_set_flow_avx512() 33 flow->matches = matches; in acl_set_flow_avx512() 40 update_flow_mask(const struct acl_flow_avx512 *flow, uint32_t *fmsk, in update_flow_mask() argument [all …]
|
| /dpdk/drivers/net/cxgbe/ |
| H A D | cxgbe_flow.c | 570 if (flow->fs.cap) in cxgbe_verify_fidx() 1171 if (!flow) { in cxgbe_flow_create() 1179 flow->dev = dev; in cxgbe_flow_create() 1180 flow->fs.private = (void *)flow; in cxgbe_flow_create() 1198 flow->f->private = flow; /* Will be used during flush */ in cxgbe_flow_create() 1200 return flow; in cxgbe_flow_create() 1212 if (cxgbe_verify_fidx(flow, flow->fidx, 1)) in __cxgbe_flow_destroy() 1284 f = flow->f; in cxgbe_flow_query() 1339 if (!flow) in cxgbe_flow_validate() 1345 flow->dev = dev; in cxgbe_flow_validate() [all …]
|
| /dpdk/drivers/net/igc/ |
| H A D | igc_flow.c | 664 if (flow == NULL) { in igc_alloc_flow() 673 return flow; in igc_alloc_flow() 691 rte_free(flow); in igc_remove_flow() 701 if (it == flow) in igc_is_flow_in_list() 735 if (flow) in igc_flow_create() 750 if (flow) in igc_flow_create() 756 if (flow) in igc_flow_create() 762 if (flow) { in igc_flow_create() 778 rte_free(flow); in igc_flow_create() 787 return flow; in igc_flow_create() [all …]
|
| /dpdk/drivers/net/sfc/ |
| H A D | sfc_flow.c | 2475 struct rte_flow *flow; in sfc_flow_zmalloc() local 2477 flow = rte_zmalloc("sfc_rte_flow", sizeof(*flow), 0); in sfc_flow_zmalloc() 2478 if (flow == NULL) { in sfc_flow_zmalloc() 2484 return flow; in sfc_flow_zmalloc() 2496 rte_free(flow); in sfc_flow_free() 2585 struct rte_flow *flow; in sfc_flow_validate() local 2589 if (flow == NULL) in sfc_flow_validate() 2617 if (flow == NULL) in sfc_flow_create() 2636 return flow; in sfc_flow_create() 2661 if (flow_ptr == flow) in sfc_flow_destroy() [all …]
|
| H A D | sfc_flow.h | 174 struct rte_flow *flow, 178 struct rte_flow *flow); 181 struct rte_flow *flow); 184 struct rte_flow *flow); 187 struct rte_flow *flow); 190 struct rte_flow *flow,
|
| /dpdk/drivers/net/cnxk/ |
| H A D | cn9k_flow.c | 17 struct roc_npc_flow *flow; in cn9k_flow_create() local 20 flow = cnxk_flow_create(eth_dev, attr, pattern, actions, error); in cn9k_flow_create() 21 if (!flow) in cn9k_flow_create() 31 return (struct rte_flow *)flow; in cn9k_flow_create() 38 struct roc_npc_flow *flow = (struct roc_npc_flow *)rte_flow; in cn9k_flow_destroy() local 45 if (flow->nix_intf == ROC_NPC_INTF_RX) { in cn9k_flow_destroy() 55 return cnxk_flow_destroy(eth_dev, flow, error); in cn9k_flow_destroy()
|
| /dpdk/drivers/net/qede/ |
| H A D | qede_filter.c | 806 if (flow) { in qede_flow_parse_pattern() 820 if (flow) { in qede_flow_parse_pattern() 838 if (flow) { in qede_flow_parse_pattern() 853 if (flow) { in qede_flow_parse_pattern() 913 if (flow) in qede_flow_parse_actions() 918 if (flow) in qede_flow_parse_actions() 981 flow = rte_zmalloc("qede_rte_flow", sizeof(*flow), 0); in qede_flow_create() 991 rte_free(flow); in qede_flow_create() 1000 rte_free(flow); in qede_flow_create() 1004 return flow; in qede_flow_create() [all …]
|
| /dpdk/drivers/net/softnic/ |
| H A D | rte_eth_softnic_meter.c | 499 if (m->flow != NULL) in pmd_mtr_destroy() 570 if (m->flow) { in pmd_mtr_meter_profile_update() 610 &m->flow->match, in pmd_mtr_meter_profile_update() 612 &m->flow->data); in pmd_mtr_meter_profile_update() 621 memcpy(&m->flow->action, &action, sizeof(m->flow->action)); in pmd_mtr_meter_profile_update() 661 if (m->flow == NULL) in pmd_mtr_meter_dscp_table_update() 723 if (m->flow) { in pmd_mtr_meter_policy_update() 738 &m->flow->match, in pmd_mtr_meter_policy_update() 740 &m->flow->data); in pmd_mtr_meter_policy_update() 749 memcpy(&m->flow->action, &action, sizeof(m->flow->action)); in pmd_mtr_meter_policy_update() [all …]
|
| H A D | rte_eth_softnic_flow.c | 33 return flow; in softnic_flow_find() 1582 if (m->flow) in flow_rule_action_get() 1962 if (m->flow == flow) { in flow_meter_owner_reset() 1977 mtr->flow = flow; in flow_meter_owner_set() 2116 free(flow); in pmd_flow_create() 2141 return flow; in pmd_flow_create() 2161 table = &flow->pipeline->table[flow->table_id]; in pmd_flow_destroy() 2181 free(flow); in pmd_flow_destroy() 2219 free(flow); in pmd_flow_flush() 2261 table = &flow->pipeline->table[flow->table_id]; in pmd_flow_query() [all …]
|
| /dpdk/doc/guides/howto/ |
| H A D | rte_flow.rst | 4 Generic flow API - examples 26 testpmd> flow create 0 ingress pattern eth / vlan / 41 struct rte_flow *flow; 64 /* validate and create the flow rule */ 137 struct rte_flow *flow; 162 /* validate and create the flow rule */ 169 Terminal 1: running sample app flow rule disabled:: 191 Terminal 1: running sample app flow rule enabled:: 236 struct rte_flow *flow; 256 /* validate and create the flow rule */ [all …]
|
| /dpdk/drivers/net/ipn3ke/ |
| H A D | ipn3ke_flow.c | 915 struct rte_flow *flow) in ipn3ke_flow_key_generation() argument 921 dst = flow->rule.key; in ipn3ke_flow_key_generation() 964 struct rte_flow *flow) in ipn3ke_flow_result_generation() argument 971 dst = flow->rule.result; in ipn3ke_flow_result_generation() 1166 struct rte_flow *flow; in ipn3ke_flow_create() local 1189 if (!flow) { in ipn3ke_flow_create() 1195 return flow; in ipn3ke_flow_create() 1202 return flow; in ipn3ke_flow_create() 1215 rte_free(flow); in ipn3ke_flow_destroy() 1232 struct rte_flow *flow, *temp; in ipn3ke_flow_flush() local [all …]
|
| /dpdk/doc/guides/testpmd_app_ug/ |
| H A D | testpmd_funcs.rst | 199 Supported flow types: 1539 show flow control 3318 ``flow`` syntax 3441 for one flow:: 3647 ``flow pull`` asks the underlying device about flow queue operations 3691 ``flow validate`` reports whether a flow rule would be accepted by the 3726 Creating flow rules 3981 - ``flow {unsigned}``: flow label. 4536 Querying flow rules 4539 ``flow query`` queries a specific action of a flow rule having that [all …]
|
| /dpdk/doc/guides/sample_app_ug/ |
| H A D | flow_filtering.rst | 7 The Basic RTE flow filtering sample application is a simple example of a 8 creating a RTE flow rule. 10 It is intended as a demonstration of the basic components RTE flow rules. 37 implementation for building the flow rule. 89 :start-after: Create flow for send packet with. 8< 90 :end-before: >8 End of creating flow for send packet with. 111 :start-after: Port initialization used in flow filtering. 8< 138 :start-after: Create flow for send packet with. 8< 139 :end-before: >8 End of create flow and the flow rule. 168 :start-after: Main_loop for flow filtering. 8< [all …]
|