CAUTION: This email originated from outside of the organization. Do not click links or open attachments unless you recognize the sender and know the content is safe.
On Thu, 18 Jul 2024 11:36:43 +0000
Raghavan V <Raghavan.V2@tatacommunications.com> wrote:
> Is there any way to distribute packets evenly (Like RSS) to specific multiple RX queues in RTE_FLOW_ACTION_TYPE_QUEUE DPDK Flow director?
>
> Desired action:
>
> uint16_t queue_indices[] = {10, 11, 12, 13, 14, 15};
> struct rte_flow_action_queue queue = {.index = queue_indices};
> struct rte_flow_action action[]={
> [0]={.type = RTE_FLOW_ACTION_TYPE_QUEUE,.conf = &queue},
> [1]={.type = RTE_FLOW_ACTION_TYPE_END}
> };
You want RTE_FLOW_ACTION_TYPE_RSS
uint16_t queue_indices[] = {10, 11, 12, 13, 14, 15};
struct rte_flow_action_rss rss = {
.types = RTE_ETH_RSS_UDP | RTE_ETH_RSS_TCP,
.queue_num = RTE_DIM(queue_indicies),
.queue = queue_indicies,
};
struct rte_flow_action action[]={
[0]={.type = RTE_FLOW_ACTION_TYPE_RSS,.conf = &rss},
[1]={.type = RTE_FLOW_ACTION_TYPE_END}
};
> Is this action limited to drivers specific?
Yes, drivers implement only what hardware can support.