DPDK patches and discussions
 help / color / mirror / Atom feed
From: Eli Britstein <elibr@nvidia.com>
To: <dev@dpdk.org>, Thomas Monjalon <thomas@monjalon.net>
Cc: Slava Ovsiienko <viacheslavo@nvidia.com>,
	Ori Kam <orika@nvidia.com>, "Asaf Penso" <asafp@nvidia.com>,
	Matan Azrad <matan@nvidia.com>, Gaetan Rivet <gaetanr@nvidia.com>,
	Nir Anteby <nanteby@nvidia.com>, Eli Britstein <elibr@nvidia.com>
Subject: [dpdk-dev] [RFC] testpmd: support user-id attribute
Date: Mon, 4 Jul 2022 11:24:33 +0300	[thread overview]
Message-ID: <20220704082433.3698761-1-elibr@nvidia.com> (raw)

Upon creation of a flow, testpmd assigns it a flow ID. Later, the flow
ID is used for flow operations (query, destroy, dump).

The testpmd application allows to manage flow rules with its IDs.
The flow ID is known only when the flow is created.
In order to prepare a complete sequence of testpmd commands to
copy/paste, the flow IDs must be predictable.

The idea brought here is to allow providing some user-defined ID, chosen
in advance of the effective flow creation.


Example:

testpmd> flow create 0 ingress user_id 0x1234 pattern eth / end actions
count / drop / end
Flow rule #0 created, user-id 0x1234

testpmd> flow destroy 0 user_id rule 0x1234
Flow rule #0 destroyed, user-id 0x1234
Here, "user_id" is a flag that signifies the "rule" ID is the user-id.

The motivation is from OVS. OVS dumps its "rte_flow_create" calls to
the log in testpmd commands syntax. As the flow ID testpmd would assign
is unkwon, it cannot log valid "flow destroy" commands.

With the enhancement described above, valid testpmd commands can be
created in a log to copy/paste to testpmd.
The application's flows sequence can then be played back in testpmd, to
enable enhanced dpdk debug capabilities of the applications's
flows in a controlled environment of testpmd rather than a dynamic, more
difficult to debug environment of the application.

-- 
2.26.2.1730.g385c171


             reply	other threads:[~2022-07-04  8:25 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-07-04  8:24 Eli Britstein [this message]
2022-07-19 20:44 ` Thomas Monjalon
2022-07-28 14:06   ` Singh, Aman Deep
2022-08-07  7:01     ` Eli Britstein
2023-01-30 10:03       ` Asaf Penso
2023-02-21 10:26         ` Thomas Monjalon
2023-02-21 15:28           ` Singh, Aman Deep

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20220704082433.3698761-1-elibr@nvidia.com \
    --to=elibr@nvidia.com \
    --cc=asafp@nvidia.com \
    --cc=dev@dpdk.org \
    --cc=gaetanr@nvidia.com \
    --cc=matan@nvidia.com \
    --cc=nanteby@nvidia.com \
    --cc=orika@nvidia.com \
    --cc=thomas@monjalon.net \
    --cc=viacheslavo@nvidia.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).