| 2024 | } |
| 2025 | |
| 2026 | struct rte_flow * |
| 2027 | rte_flow_async_create(uint16_t port_id, |
| 2028 | uint32_t queue_id, |
| 2029 | const struct rte_flow_op_attr *op_attr, |
| 2030 | struct rte_flow_template_table *template_table, |
| 2031 | const struct rte_flow_item pattern[], |
| 2032 | uint8_t pattern_template_index, |
| 2033 | const struct rte_flow_action actions[], |
| 2034 | uint8_t actions_template_index, |
| 2035 | void *user_data, |
| 2036 | struct rte_flow_error *error) |
| 2037 | { |
| 2038 | struct rte_eth_dev *dev = &rte_eth_devices[port_id]; |
| 2039 | const struct rte_flow_ops *ops = rte_flow_ops_get(port_id, error); |
| 2040 | struct rte_flow *flow; |
| 2041 | |
| 2042 | flow = ops->async_create(dev, queue_id, |
| 2043 | op_attr, template_table, |
| 2044 | pattern, pattern_template_index, |
| 2045 | actions, actions_template_index, |
| 2046 | user_data, error); |
| 2047 | if (flow == NULL) |
| 2048 | flow_err(port_id, -rte_errno, error); |
| 2049 | |
| 2050 | rte_flow_trace_async_create(port_id, queue_id, op_attr, template_table, |
| 2051 | pattern, pattern_template_index, actions, |
| 2052 | actions_template_index, user_data, flow); |
| 2053 | |
| 2054 | return flow; |
| 2055 | } |
| 2056 | |
| 2057 | struct rte_flow * |
| 2058 | rte_flow_async_create_by_index(uint16_t port_id, |
no test coverage detected