ethdev: add async flow connection tracking configuration
In queue based async flow engine, in order to optimize the flow insertion rate, PMD can use the hints from application to have resources pre-allocate during initialization phase for actions such as count/meter/aging. This commit adds the connection tracking action hints. Signed-off-by: Suanming Mou <suanmingm@nvidia.com> Acked-by: Ori Kam <orika@nvidia.com>
This commit is contained in:
parent
3f9acb5c83
commit
3d7c08e4ef
@ -220,6 +220,7 @@ enum index {
|
|||||||
CONFIG_COUNTERS_NUMBER,
|
CONFIG_COUNTERS_NUMBER,
|
||||||
CONFIG_AGING_OBJECTS_NUMBER,
|
CONFIG_AGING_OBJECTS_NUMBER,
|
||||||
CONFIG_METERS_NUMBER,
|
CONFIG_METERS_NUMBER,
|
||||||
|
CONFIG_CONN_TRACK_NUMBER,
|
||||||
|
|
||||||
/* Indirect action arguments */
|
/* Indirect action arguments */
|
||||||
INDIRECT_ACTION_CREATE,
|
INDIRECT_ACTION_CREATE,
|
||||||
@ -1076,6 +1077,7 @@ static const enum index next_config_attr[] = {
|
|||||||
CONFIG_COUNTERS_NUMBER,
|
CONFIG_COUNTERS_NUMBER,
|
||||||
CONFIG_AGING_OBJECTS_NUMBER,
|
CONFIG_AGING_OBJECTS_NUMBER,
|
||||||
CONFIG_METERS_NUMBER,
|
CONFIG_METERS_NUMBER,
|
||||||
|
CONFIG_CONN_TRACK_NUMBER,
|
||||||
END,
|
END,
|
||||||
ZERO,
|
ZERO,
|
||||||
};
|
};
|
||||||
@ -2639,6 +2641,14 @@ static const struct token token_list[] = {
|
|||||||
.args = ARGS(ARGS_ENTRY(struct buffer,
|
.args = ARGS(ARGS_ENTRY(struct buffer,
|
||||||
args.configure.port_attr.nb_meters)),
|
args.configure.port_attr.nb_meters)),
|
||||||
},
|
},
|
||||||
|
[CONFIG_CONN_TRACK_NUMBER] = {
|
||||||
|
.name = "conn_tracks_number",
|
||||||
|
.help = "number of connection trackings",
|
||||||
|
.next = NEXT(next_config_attr,
|
||||||
|
NEXT_ENTRY(COMMON_UNSIGNED)),
|
||||||
|
.args = ARGS(ARGS_ENTRY(struct buffer,
|
||||||
|
args.configure.port_attr.nb_conn_tracks)),
|
||||||
|
},
|
||||||
/* Top-level command. */
|
/* Top-level command. */
|
||||||
[PATTERN_TEMPLATE] = {
|
[PATTERN_TEMPLATE] = {
|
||||||
.name = "pattern_template",
|
.name = "pattern_template",
|
||||||
|
@ -55,6 +55,12 @@ New Features
|
|||||||
Also, make sure to start the actual text at the margin.
|
Also, make sure to start the actual text at the margin.
|
||||||
=======================================================
|
=======================================================
|
||||||
|
|
||||||
|
* **Added configuration for asynchronous flow connection tracking.**
|
||||||
|
|
||||||
|
Added connection tracking action number hint to ``rte_flow_configure``
|
||||||
|
and ``rte_flow_info_get``.
|
||||||
|
PMD can prepare the connection tracking resources according to the hint.
|
||||||
|
|
||||||
* **Updated Intel iavf driver.**
|
* **Updated Intel iavf driver.**
|
||||||
|
|
||||||
* Added flow subscription support.
|
* Added flow subscription support.
|
||||||
|
@ -4761,6 +4761,11 @@ struct rte_flow_port_info {
|
|||||||
* @see RTE_FLOW_ACTION_TYPE_METER
|
* @see RTE_FLOW_ACTION_TYPE_METER
|
||||||
*/
|
*/
|
||||||
uint32_t max_nb_meters;
|
uint32_t max_nb_meters;
|
||||||
|
/**
|
||||||
|
* Maximum number connection trackings.
|
||||||
|
* @see RTE_FLOW_ACTION_TYPE_CONNTRACK
|
||||||
|
*/
|
||||||
|
uint32_t max_nb_conn_tracks;
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -4830,6 +4835,11 @@ struct rte_flow_port_attr {
|
|||||||
* @see RTE_FLOW_ACTION_TYPE_METER
|
* @see RTE_FLOW_ACTION_TYPE_METER
|
||||||
*/
|
*/
|
||||||
uint32_t nb_meters;
|
uint32_t nb_meters;
|
||||||
|
/**
|
||||||
|
* Number of connection trackings to configure.
|
||||||
|
* @see RTE_FLOW_ACTION_TYPE_CONNTRACK
|
||||||
|
*/
|
||||||
|
uint32_t nb_conn_tracks;
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
Loading…
Reference in New Issue
Block a user