DPDK usage discussions
 help / color / mirror / Atom feed
* rte flow rule not clear with DPDK 21.11 and Intel E810
@ 2021-12-01  7:48 Filip Janiszewski
  2021-12-01 10:17 ` Filip Janiszewski
  0 siblings, 1 reply; 3+ messages in thread
From: Filip Janiszewski @ 2021-12-01  7:48 UTC (permalink / raw)
  To: users

Hi,

Is there any sensible reason for which this flow rule works:

.
testpmd> flow create 0 ingress pattern eth / ipv4 dst spec 199.168.152.2
dst mask 255.255.0.255 / end actions queue index 1 / end
Flow rule #0 created
.

But this one not?:

.
testpmd> flow create 0 ingress pattern eth / ipv4 dst spec 199.168.152.2
dst mask 255.255.255.0 / end actions queue index 1 / end
ice_flow_create(): Failed to create flow
port_flow_complain(): Caught PMD error type 10 (item specification):
cause: 0x7ffe040edaa8, Invalid input set: Invalid argument
.

I've just changed the mask from 255.255.0.255 to 255.255.255.0, it's
really confusing why the latter one is not accepted..

Thanks

-- 
BR, Filip
+48 666 369 823

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

* Re: rte flow rule not clear with DPDK 21.11 and Intel E810
  2021-12-01  7:48 rte flow rule not clear with DPDK 21.11 and Intel E810 Filip Janiszewski
@ 2021-12-01 10:17 ` Filip Janiszewski
  2021-12-02 11:24   ` Massimo Girondi
  0 siblings, 1 reply; 3+ messages in thread
From: Filip Janiszewski @ 2021-12-01 10:17 UTC (permalink / raw)
  To: users

Just updating on other similar issue I'm finding, it appears this rte
flow rule is completely broken for Intel E810 and most probably useless,
for example, this rule works:

.
testpmd> flow create 0 ingress pattern eth / ipv4 / tcp dst is 2044 /
end actions queue index 1 / end
Flow rule #4 created
.

But the UDP version does not work:

.
testpmd> flow create 0 ingress pattern eth / ipv4 / udp dst is 51005 /
end actions queue index 1 / end
Flow rule #1 created
.

Also vlan id based filtering do not work, ip ranges (using spec+last) do
not work et cetera.

Am I doing something wrong with testpmd or anybody can confirm that this
is just not working until fixed?

Thanks

Il 12/1/21 8:48 AM, Filip Janiszewski ha scritto:
> Hi,
> 
> Is there any sensible reason for which this flow rule works:
> 
> .
> testpmd> flow create 0 ingress pattern eth / ipv4 dst spec 199.168.152.2
> dst mask 255.255.0.255 / end actions queue index 1 / end
> Flow rule #0 created
> .
> 
> But this one not?:
> 
> .
> testpmd> flow create 0 ingress pattern eth / ipv4 dst spec 199.168.152.2
> dst mask 255.255.255.0 / end actions queue index 1 / end
> ice_flow_create(): Failed to create flow
> port_flow_complain(): Caught PMD error type 10 (item specification):
> cause: 0x7ffe040edaa8, Invalid input set: Invalid argument
> .
> 
> I've just changed the mask from 255.255.0.255 to 255.255.255.0, it's
> really confusing why the latter one is not accepted..
> 
> Thanks
> 

-- 
BR, Filip
+48 666 369 823

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

* Re: rte flow rule not clear with DPDK 21.11 and Intel E810
  2021-12-01 10:17 ` Filip Janiszewski
@ 2021-12-02 11:24   ` Massimo Girondi
  0 siblings, 0 replies; 3+ messages in thread
From: Massimo Girondi @ 2021-12-02 11:24 UTC (permalink / raw)
  To: Filip Janiszewski, users

Hi Filip,
I saw similar issues on a E810 too when I tested them a while ago.
Looks like the supported patterns and actions are more limited than 
other cards.
I'd suggest to look at the Intel DDP Tech Guide for some hints.
You may also want to play with priorities and pipeline modes, since they 
change what is accepted in terms of patterns.

See below

On 01/12/2021 11.17, Filip Janiszewski wrote:
 > Just updating on other similar issue I'm finding, it appears this rte
 > flow rule is completely broken for Intel E810 and most probably useless,
 > for example, this rule works:
 >
 > .
 > testpmd> flow create 0 ingress pattern eth / ipv4 / tcp dst is 2044 /
 > end actions queue index 1 / end
 > Flow rule #4 created
 > .
 >
 > But the UDP version does not work:
 >
 > .
 > testpmd> flow create 0 ingress pattern eth / ipv4 / udp dst is 51005 /
 > end actions queue index 1 / end
 > Flow rule #1 created
This I think it worked when I tried. Try to match a specific IP.
 > .
 >
 > Also vlan id based filtering do not work, ip ranges (using spec+last) do
 > not work et cetera.
Be careful with the VLAN, only some specific patterns are supported.
Also, check the "protocol extraction per queue" on thje DPDK documentation.
 >
 > Am I doing something wrong with testpmd or anybody can confirm that this
 > is just not working until fixed?
 >
 > Thanks
 >
 > Il 12/1/21 8:48 AM, Filip Janiszewski ha scritto:
 >> Hi,
 >>
 >> Is there any sensible reason for which this flow rule works:
 >>
 >> .
 >> testpmd> flow create 0 ingress pattern eth / ipv4 dst spec 199.168.152.2
 >> dst mask 255.255.0.255 / end actions queue index 1 / end
 >> Flow rule #0 created
 >> .
 >>
 >> But this one not?:
 >>
 >> .
 >> testpmd> flow create 0 ingress pattern eth / ipv4 dst spec 199.168.152.2
 >> dst mask 255.255.255.0 / end actions queue index 1 / end
 >> ice_flow_create(): Failed to create flow
 >> port_flow_complain(): Caught PMD error type 10 (item specification):
 >> cause: 0x7ffe040edaa8, Invalid input set: Invalid argument
This may be due to the 0 not at the end, so that you can't do LPM. I saw 
similar problems on other drivers too with this.
 >> .
 >>
 >> I've just changed the mask from 255.255.0.255 to 255.255.255.0, it's
 >> really confusing why the latter one is not accepted..
 >>
 >> Thanks
 >>
 >
Hope that helps
Massimo


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

end of thread, other threads:[~2021-12-02 11:24 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-12-01  7:48 rte flow rule not clear with DPDK 21.11 and Intel E810 Filip Janiszewski
2021-12-01 10:17 ` Filip Janiszewski
2021-12-02 11:24   ` Massimo Girondi

DPDK usage discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://inbox.dpdk.org/users/0 users/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 users users/ http://inbox.dpdk.org/users \
		users@dpdk.org
	public-inbox-index users

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://inbox.dpdk.org/inbox.dpdk.users


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git