DPDK usage discussions
 help / color / mirror / Atom feed
* [dpdk-users] Issues with rte_flow_destroy
@ 2021-05-25 12:34 Antoine POLLENUS
  2021-05-27  8:27 ` Xing, Beilei
  0 siblings, 1 reply; 5+ messages in thread
From: Antoine POLLENUS @ 2021-05-25 12:34 UTC (permalink / raw)
  To: users

Hi,

I'm experiencing some issues using the flow API and a intel XXV710 (i40e).

I managed to reproduce it  in the flow filtering sample.

I'm creating one flow than deleting it and then creating another with basic change
#define SRC_IP ((0<<24) + (0<<16) + (0<<8) + 0) /* src ip = 0.0.0.0 */
#define SRC_IP_1 ((192<<24) + (168<<16) + (1<<8) + 3) /* dest ip = 192.168.1.1 */
#define DEST_IP ((192<<24) + (168<<16) + (1<<8) + 1) /* dest ip = 192.168.1.1 */
#define DEST_IP_1 ((192<<24) + (168<<16) + (1<<8) + 2) /* dest ip = 192.168.1.1 */

                flow = generate_ipv4_flow(port_id, selected_queue,
                                                               SRC_IP, EMPTY_MASK,
                                                               DEST_IP, FULL_MASK, &error);
                if (!flow) {
                               printf("Flow can't be created %d message: %s\n",
                                               error.type,
                                               error.message ? error.message : "(no stated reason)");
                               rte_exit(EXIT_FAILURE, "error in creating flow");
                }
                //Deleting the rule
                int returned;
                returned = rte_flow_destroy(port_id, flow, &error);
                if(returned < 0)
                {
                               printf("destroy %d message: %s\n",
                                               error.type,
                                               error.message ? error.message : "(no stated reason)");
                }
                //Generating another rule
                flow1 = generate_ipv4_flow(port_id, selected_queue,
                                                               SRC_IP_1, FULL_MASK,
                                                               DEST_IP_1, FULL_MASK, &error);
                if (!flow1) {
                               printf("Flow can't be created %d message: %s\n",
                                               error.type,
                                               error.message ? error.message : "(no stated reason)");
                               rte_exit(EXIT_FAILURE, "error in creating flow");
                }

When doing that I always get an error on the second flow I want to add.

Flow can't be created 13 message: Conflict with the first rule's input set.

The rule is indeed in conflict because it uses the same as the previous but with the source IP changing and also the destination IP.

The strange thing is that a destroy has been made on the previous rule and should not be there anymore....

Am I doing something wrong or is there a bug in the destroy function ?

Thank you in advance for your answer,

Regards,

Antoine Pollenus

^ permalink raw reply	[flat|nested] 5+ messages in thread
* Re: [dpdk-users] Issues with rte_flow_destroy
@ 2021-05-26  7:10 Antoine POLLENUS
  0 siblings, 0 replies; 5+ messages in thread
From: Antoine POLLENUS @ 2021-05-26  7:10 UTC (permalink / raw)
  To: users

I've also test using directly the flow director capabilities using ethtool and there it seems there is no issues I can make the same work flow as I want.

I've also test through DPDK with a XL710 (40G) and I have the same issues it seems the issue come from someware in the i40e functions. Maybe the validate.

This is really blocking for us and I have no idea how to fix that or any work around.

thank you in advance for your help,

regards

Antoine Pollenus

^ permalink raw reply	[flat|nested] 5+ messages in thread
* Re: [dpdk-users] Issues with rte_flow_destroy
@ 2021-05-28  9:23 Antoine POLLENUS
  0 siblings, 0 replies; 5+ messages in thread
From: Antoine POLLENUS @ 2021-05-28  9:23 UTC (permalink / raw)
  To: users

I tried with various version starting from 19.11 to the latest.

Could it be an issue with the firmware of the intel cards I'm using ?

If yes how can I get that firmware version ?

Have you tried with my code in the flow_filtering example ?

Regards,

Antoine Pollenus

^ permalink raw reply	[flat|nested] 5+ messages in thread
* Re: [dpdk-users] Issues with rte_flow_destroy
@ 2021-06-01 11:54 Antoine POLLENUS
  0 siblings, 0 replies; 5+ messages in thread
From: Antoine POLLENUS @ 2021-06-01 11:54 UTC (permalink / raw)
  To: users

Hello,

I've also tried with a broadcom P225P and I have an other issues there.

I have an error on the destroy filter.

bnxt_hwrm_clear_ntuple_filter(): error 1:16:00c00014:0000
destroy 2 message: Failed to destroy flow.

I'm really asking myself if I'm doing something wrong and I really need some help on my issues.

Regards,

Antoine Pollenus

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

end of thread, other threads:[~2021-06-01 11:54 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-05-25 12:34 [dpdk-users] Issues with rte_flow_destroy Antoine POLLENUS
2021-05-27  8:27 ` Xing, Beilei
2021-05-26  7:10 Antoine POLLENUS
2021-05-28  9:23 Antoine POLLENUS
2021-06-01 11:54 Antoine POLLENUS

DPDK usage discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror https://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/ https://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