DPDK patches and discussions
 help / color / mirror / Atom feed
* Issue in testpmd when using RSS Flows with Mellanox NICs
@ 2024-07-31 12:55 Alex Chapman
  2024-07-31 13:02 ` Thomas Monjalon
  0 siblings, 1 reply; 3+ messages in thread
From: Alex Chapman @ 2024-07-31 12:55 UTC (permalink / raw)
  To: dev; +Cc: Luca.Vizzarro, Paul.Szczepanek

Hello maintainers,

I am currently facing issues when creating RSS flows using testpmd.
When using the following flow on an intel NIC, it works as expected,
using the reta table to redirect ipv4-udp packets to the correct queue.

        flow create 0 ingress pattern eth / ipv4 / udp / end actions rss types
ipv4-udp end queues end func toeplitz / end

However when executing the same command on a Mellanox NIC, the following
error occurs.

     Caught PMD error type 15 (action configuration): No queues
configured: Invalid argument

This error can be resolved by manually specifying the queues used:

     flow create 0 ingress pattern eth / ipv4 / udp / end actions rss
types ipv4-udp end queues 0 1 2 3 4 5 6 7 8 end func toeplitz / end

However the packets are not placed into their expected queues using the
reta table.

When looking through the Generic flow API guide under RSS
(https://doc.dpdk.org/guides/prog_guide/rte_flow.html), the attribute
queues does not exist.
 From my understanding this seems to be a mistake, as the attribute
"queue" does exist with the definition "queue indices to use"
However when attempting to use this attribute I get the error "Bad
arguments"

If anyone is able to shed some light on the use of RSS in flows, that
would be greatly appreciated.

Thanks,
Alex
IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Issue in testpmd when using RSS Flows with Mellanox NICs
  2024-07-31 12:55 Issue in testpmd when using RSS Flows with Mellanox NICs Alex Chapman
@ 2024-07-31 13:02 ` Thomas Monjalon
  2024-08-01 12:13   ` Dariusz Sosnowski
  0 siblings, 1 reply; 3+ messages in thread
From: Thomas Monjalon @ 2024-07-31 13:02 UTC (permalink / raw)
  To: Alex Chapman
  Cc: dev, Luca.Vizzarro, Paul.Szczepanek, Dariusz Sosnowski,
	Viacheslav Ovsiienko, Bing Zhao, Ori Kam, Suanming Mou,
	Matan Azrad

Hello,

31/07/2024 14:55, Alex Chapman:
> Hello maintainers,

Do not hesitate to read the file MAINTAINERS to place the appropriate Cc list.
Adding mlx5 maintainers.


> I am currently facing issues when creating RSS flows using testpmd.
> When using the following flow on an intel NIC, it works as expected,
> using the reta table to redirect ipv4-udp packets to the correct queue.
> 
>         flow create 0 ingress pattern eth / ipv4 / udp / end actions rss types
> ipv4-udp end queues end func toeplitz / end
> 
> However when executing the same command on a Mellanox NIC, the following
> error occurs.
> 
>      Caught PMD error type 15 (action configuration): No queues
> configured: Invalid argument
> 
> This error can be resolved by manually specifying the queues used:
> 
>      flow create 0 ingress pattern eth / ipv4 / udp / end actions rss
> types ipv4-udp end queues 0 1 2 3 4 5 6 7 8 end func toeplitz / end
> 
> However the packets are not placed into their expected queues using the
> reta table.
> 
> When looking through the Generic flow API guide under RSS
> (https://doc.dpdk.org/guides/prog_guide/rte_flow.html), the attribute
> queues does not exist.
>  From my understanding this seems to be a mistake, as the attribute
> "queue" does exist with the definition "queue indices to use"
> However when attempting to use this attribute I get the error "Bad
> arguments"
> 
> If anyone is able to shed some light on the use of RSS in flows, that
> would be greatly appreciated.
> 
> Thanks,
> Alex




^ permalink raw reply	[flat|nested] 3+ messages in thread

* RE: Issue in testpmd when using RSS Flows with Mellanox NICs
  2024-07-31 13:02 ` Thomas Monjalon
@ 2024-08-01 12:13   ` Dariusz Sosnowski
  0 siblings, 0 replies; 3+ messages in thread
From: Dariusz Sosnowski @ 2024-08-01 12:13 UTC (permalink / raw)
  To: NBU-Contact-Thomas Monjalon (EXTERNAL), Alex Chapman
  Cc: dev, Luca.Vizzarro, Paul.Szczepanek, Slava Ovsiienko, Bing Zhao,
	Ori Kam, Suanming Mou, Matan Azrad

Hi,

> -----Original Message-----
> From: Thomas Monjalon <thomas@monjalon.net>
> Sent: Wednesday, July 31, 2024 15:02
> To: Alex Chapman <alex.chapman@arm.com>
> Cc: dev@dpdk.org; Luca.Vizzarro@arm.com; Paul.Szczepanek@arm.com; Dariusz
> Sosnowski <dsosnowski@nvidia.com>; Slava Ovsiienko
> <viacheslavo@nvidia.com>; Bing Zhao <bingz@nvidia.com>; Ori Kam
> <orika@nvidia.com>; Suanming Mou <suanmingm@nvidia.com>; Matan Azrad
> <matan@nvidia.com>
> 
> Hello,
> 
> 31/07/2024 14:55, Alex Chapman:
> > Hello maintainers,
> 
> Do not hesitate to read the file MAINTAINERS to place the appropriate Cc list.
> Adding mlx5 maintainers.
> 
> 
> > I am currently facing issues when creating RSS flows using testpmd.
> > When using the following flow on an intel NIC, it works as expected,
> > using the reta table to redirect ipv4-udp packets to the correct queue.
> >
> >         flow create 0 ingress pattern eth / ipv4 / udp / end actions
> > rss types ipv4-udp end queues end func toeplitz / end
> >
> > However when executing the same command on a Mellanox NIC, the
> > following error occurs.
> >
> >      Caught PMD error type 15 (action configuration): No queues
> > configured: Invalid argument
> >
> > This error can be resolved by manually specifying the queues used:
> >
> >      flow create 0 ingress pattern eth / ipv4 / udp / end actions rss
> > types ipv4-udp end queues 0 1 2 3 4 5 6 7 8 end func toeplitz / end
> >
> > However the packets are not placed into their expected queues using
> > the reta table.

Currently mlx5 PMD requires that array of Rx queues is provided with RSS flow action.
There's no support right now for default set of queues on mlx5 PMD side.

"queues" parameter of RSS flow action takes Rx queue indices directly, not redirection table indices,
so when RSS hash is calculated during processing of that action,
then the queue is selected as:

	queues[hash % nb_of_queues]

> >
> > When looking through the Generic flow API guide under RSS
> > (https://doc.dpdk.org/guides/prog_guide/rte_flow.html), the attribute
> > queues does not exist.
> >  From my understanding this seems to be a mistake, as the attribute
> > "queue" does exist with the definition "queue indices to use"
> > However when attempting to use this attribute I get the error "Bad
> > arguments"

Yes, that's a mistake and we should fix that.

> > If anyone is able to shed some light on the use of RSS in flows, that
> > would be greatly appreciated.
> >
> > Thanks,
> > Alex
> 
> 

Best regards,
Dariusz Sosnowski


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2024-08-01 12:13 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-07-31 12:55 Issue in testpmd when using RSS Flows with Mellanox NICs Alex Chapman
2024-07-31 13:02 ` Thomas Monjalon
2024-08-01 12:13   ` Dariusz Sosnowski

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).