DPDK patches and discussions
 help / color / mirror / Atom feed
From: <skori@marvell.com>
Cc: <dev@dpdk.org>, Sunil Kumar Kori <skori@marvell.com>
Subject: [PATCH v5 00/12] add CLI based graph application
Date: Thu, 21 Sep 2023 15:38:20 +0530	[thread overview]
Message-ID: <20230921100832.2036256-1-skori@marvell.com> (raw)
In-Reply-To: <20230919160455.1678716-1-skori@marvell.com>

From: Sunil Kumar Kori <skori@marvell.com>

In the continuation of following feedback
https://patches.dpdk.org/project/dpdk/patch/20230425131516.3308612-5-vattunuru@marvell.com/
this patch series adds dpdk-graph application to exercise various
usecases using graph.

1. Each use case is defined in terms of .cli file which will contain
set of commands to configure the system and to create a graph for
that use case.

2. Each module like ethdev, mempool, route etc exposes its set of commands
to do global and node specific configuration.

3. Command parsing is backed by command line library.


Rakesh Kudurumalla (5):
  app/graph: add mempool command line interfaces
  app/graph: add ipv6_lookup command line interfaces
  app/graph: add ethdev_rx command line interfaces
  app/graph: add graph command line interfaces
  app/graph: add l3fwd usecase

Sunil Kumar Kori (7):
  app/graph: add application framework to read CLI
  app/graph: add telnet connectivity framework
  app/graph: add parser utility APIs
  app/graph: add ethdev command line interfaces
  app/graph: add ipv4_lookup command line interfaces
  app/graph: add neigh command line interfaces
  app/graph: add CLI option to enable graph stats

 MAINTAINERS                                  |   7 +
 app/graph/cli.c                              | 136 +++
 app/graph/cli.h                              |  32 +
 app/graph/conn.c                             | 282 ++++++
 app/graph/conn.h                             |  46 +
 app/graph/ethdev.c                           | 885 +++++++++++++++++++
 app/graph/ethdev.h                           |  40 +
 app/graph/ethdev_priv.h                      | 112 +++
 app/graph/ethdev_rx.c                        | 165 ++++
 app/graph/ethdev_rx.h                        |  37 +
 app/graph/ethdev_rx_priv.h                   |  39 +
 app/graph/examples/l3fwd.cli                 |  87 ++
 app/graph/graph.c                            | 537 +++++++++++
 app/graph/graph.h                            |  20 +
 app/graph/graph_priv.h                       |  70 ++
 app/graph/ip4_route.c                        | 205 +++++
 app/graph/ip6_route.c                        | 210 +++++
 app/graph/l3fwd.c                            | 136 +++
 app/graph/l3fwd.h                            |  11 +
 app/graph/main.c                             | 235 +++++
 app/graph/mempool.c                          | 140 +++
 app/graph/mempool.h                          |  24 +
 app/graph/mempool_priv.h                     |  34 +
 app/graph/meson.build                        |  24 +
 app/graph/module_api.h                       |  31 +
 app/graph/neigh.c                            | 331 +++++++
 app/graph/neigh.h                            |  17 +
 app/graph/neigh_priv.h                       |  49 +
 app/graph/route.h                            |  40 +
 app/graph/route_priv.h                       |  44 +
 app/graph/utils.c                            | 156 ++++
 app/graph/utils.h                            |  14 +
 app/meson.build                              |   1 +
 doc/guides/tools/graph.rst                   | 241 +++++
 doc/guides/tools/img/graph-usecase-l3fwd.svg | 210 +++++
 doc/guides/tools/index.rst                   |   1 +
 36 files changed, 4649 insertions(+)
 create mode 100644 app/graph/cli.c
 create mode 100644 app/graph/cli.h
 create mode 100644 app/graph/conn.c
 create mode 100644 app/graph/conn.h
 create mode 100644 app/graph/ethdev.c
 create mode 100644 app/graph/ethdev.h
 create mode 100644 app/graph/ethdev_priv.h
 create mode 100644 app/graph/ethdev_rx.c
 create mode 100644 app/graph/ethdev_rx.h
 create mode 100644 app/graph/ethdev_rx_priv.h
 create mode 100644 app/graph/examples/l3fwd.cli
 create mode 100644 app/graph/graph.c
 create mode 100644 app/graph/graph.h
 create mode 100644 app/graph/graph_priv.h
 create mode 100644 app/graph/ip4_route.c
 create mode 100644 app/graph/ip6_route.c
 create mode 100644 app/graph/l3fwd.c
 create mode 100644 app/graph/l3fwd.h
 create mode 100644 app/graph/main.c
 create mode 100644 app/graph/mempool.c
 create mode 100644 app/graph/mempool.h
 create mode 100644 app/graph/mempool_priv.h
 create mode 100644 app/graph/meson.build
 create mode 100644 app/graph/module_api.h
 create mode 100644 app/graph/neigh.c
 create mode 100644 app/graph/neigh.h
 create mode 100644 app/graph/neigh_priv.h
 create mode 100644 app/graph/route.h
 create mode 100644 app/graph/route_priv.h
 create mode 100644 app/graph/utils.c
 create mode 100644 app/graph/utils.h
 create mode 100644 doc/guides/tools/graph.rst
 create mode 100644 doc/guides/tools/img/graph-usecase-l3fwd.svg

-- 
2.25.1


  parent reply	other threads:[~2023-09-21 10:08 UTC|newest]

Thread overview: 182+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-04-21  6:02 [PATCH 0/4] app: introduce testgraph application Vamsi Attunuru
2023-04-21  6:02 ` [PATCH 1/4] node: add pkt punt to kernel node Vamsi Attunuru
2023-05-29 17:29   ` Jerin Jacob
2023-05-31 12:36     ` [EXT] " Vamsi Krishna Attunuru
2023-04-21  6:02 ` [PATCH 2/4] node: add a node to receive pkts from kernel Vamsi Attunuru
2023-05-29 17:39   ` Jerin Jacob
2023-06-01  2:40     ` [EXT] " Vamsi Krishna Attunuru
2023-04-21  6:02 ` [PATCH 3/4] node: remove hardcoded node next details Vamsi Attunuru
2023-04-21  6:02 ` [PATCH 4/4] app: add testgraph application Vamsi Attunuru
2023-05-09  6:09   ` Jerin Jacob
2023-04-25 13:15 ` [PATCH v2 0/4] app: introduce " Vamsi Attunuru
2023-04-25 13:15   ` [PATCH v2 1/4] node: add pkt punt to kernel node Vamsi Attunuru
2023-05-30  8:16     ` Nithin Dabilpuram
2023-05-31 12:35       ` [EXT] " Vamsi Krishna Attunuru
2023-04-25 13:15   ` [PATCH v2 2/4] node: add a node to receive pkts from kernel Vamsi Attunuru
2023-04-25 13:15   ` [PATCH v2 3/4] node: remove hardcoded node next details Vamsi Attunuru
2023-04-25 13:15   ` [PATCH v2 4/4] app: add testgraph application Vamsi Attunuru
2023-05-09  2:34     ` [EXT] " Sunil Kumar Kori
2023-05-09  3:39       ` Vamsi Krishna Attunuru
2023-05-09  8:53         ` Sunil Kumar Kori
2023-05-09 12:24           ` Vamsi Krishna Attunuru
2023-05-12 11:08     ` Yan, Zhirun
2023-05-22  7:07       ` Vamsi Krishna Attunuru
2023-05-30  7:34         ` Jerin Jacob
2023-06-01  2:44           ` [EXT] " Vamsi Krishna Attunuru
2023-07-20 15:52             ` Rakesh Kudurumalla
2023-07-21  6:48               ` Jerin Jacob
2023-07-21  7:01                 ` Sunil Kumar Kori
2023-07-21  7:39                   ` Rakesh Kudurumalla
2023-09-08 11:00                     ` Sunil Kumar Kori
2023-09-08 10:49     ` [PATCH v3 1/1] app/graph: add example for different usecases skori
2023-09-09  1:18       ` [EXT] " Nithin Kumar Dabilpuram
2023-09-19 16:04       ` [PATCH v4 01/14] app/graph: add application framework to read CLI skori
2023-09-19 16:04         ` [PATCH v4 02/14] app/graph: add telnet connectivity framework skori
2023-09-20  4:34           ` Jerin Jacob
2023-09-20  8:14             ` Bruce Richardson
2023-09-19 16:04         ` [PATCH v4 03/14] app/graph: add parser utility APIs skori
2023-09-19 16:04         ` [PATCH v4 04/14] app/graph: add mempool command line interfaces skori
2023-09-19 16:04         ` [PATCH v4 05/14] app/graph: add ethdev " skori
2023-09-19 16:04         ` [PATCH v4 06/14] app/graph: add ipv4_lookup " skori
2023-09-19 16:04         ` [PATCH v4 07/14] app/graph: add ipv6_lookup " skori
2023-09-19 16:04         ` [PATCH v4 08/14] app/graph: add neigh " skori
2023-09-19 16:04         ` [PATCH v4 09/14] app/graph: add ethdev_rx " skori
2023-09-19 16:04         ` [PATCH v4 10/14] app/graph: add graph " skori
2023-09-19 16:04         ` [PATCH v4 11/14] app/graph: add CLI option to enable graph stats skori
2023-09-19 16:04         ` [PATCH v4 12/14] app/graph: add l3fwd usecase skori
2023-09-19 16:04         ` [PATCH v4 13/14] doc: add graph application user guide skori
2023-09-20  4:28           ` Jerin Jacob
2023-09-19 16:04         ` [PATCH v4 14/14] maintainers: add maintainers for graph app skori
2023-09-20  4:40         ` [PATCH v4 01/14] app/graph: add application framework to read CLI Jerin Jacob
2023-09-21 10:08         ` skori [this message]
2023-09-21 10:08           ` [PATCH v5 01/12] " skori
2023-09-21 10:08           ` [PATCH v5 02/12] app/graph: add telnet connectivity framework skori
2023-09-21 10:08           ` [PATCH v5 03/12] app/graph: add parser utility APIs skori
2023-09-21 10:08           ` [PATCH v5 04/12] app/graph: add mempool command line interfaces skori
2023-09-21 10:08           ` [PATCH v5 05/12] app/graph: add ethdev " skori
2023-09-21 10:08           ` [PATCH v5 06/12] app/graph: add ipv4_lookup " skori
2023-09-21 10:08           ` [PATCH v5 07/12] app/graph: add ipv6_lookup " skori
2023-09-21 10:08           ` [PATCH v5 08/12] app/graph: add neigh " skori
2023-09-21 10:08           ` [PATCH v5 09/12] app/graph: add ethdev_rx " skori
2023-09-21 10:08           ` [PATCH v5 10/12] app/graph: add graph " skori
2023-09-21 10:08           ` [PATCH v5 11/12] app/graph: add CLI option to enable graph stats skori
2023-09-21 10:08           ` [PATCH v5 12/12] app/graph: add l3fwd usecase skori
2023-09-26 10:57             ` [PATCH v6 00/12] add CLI based graph application skori
2023-09-26 10:57               ` [PATCH v6 01/12] app/graph: add application framework to read CLI skori
2023-09-26 10:57               ` [PATCH v6 02/12] app/graph: add telnet connectivity framework skori
2023-09-26 10:57               ` [PATCH v6 03/12] app/graph: add parser utility APIs skori
2023-09-26 10:57               ` [PATCH v6 04/12] app/graph: add mempool command line interfaces skori
2023-09-26 10:57               ` [PATCH v6 05/12] app/graph: add ethdev " skori
2023-09-26 10:57               ` [PATCH v6 06/12] app/graph: add ipv4_lookup " skori
2023-09-26 10:57               ` [PATCH v6 07/12] app/graph: add ipv6_lookup " skori
2023-09-26 10:57               ` [PATCH v6 08/12] app/graph: add neigh " skori
2023-09-26 10:57               ` [PATCH v6 09/12] app/graph: add ethdev_rx " skori
2023-09-26 10:57               ` [PATCH v6 10/12] app/graph: add graph " skori
2023-09-26 10:57               ` [PATCH v6 11/12] app/graph: add CLI option to enable graph stats skori
2023-09-26 10:57               ` [PATCH v6 12/12] app/graph: add l3fwd use case skori
2023-09-27 11:54                 ` [PATCH v7 00/12] add CLI based graph application skori
2023-09-27 11:54                   ` [PATCH v7 01/12] app/graph: add application framework to read CLI skori
2023-09-27 11:54                   ` [PATCH v7 02/12] app/graph: add telnet connectivity framework skori
2023-09-27 11:54                   ` [PATCH v7 03/12] app/graph: add parser utility APIs skori
2023-09-27 11:54                   ` [PATCH v7 04/12] app/graph: add mempool command line interfaces skori
2023-09-27 11:54                   ` [PATCH v7 05/12] app/graph: add ethdev " skori
2023-09-27 11:54                   ` [PATCH v7 06/12] app/graph: add ipv4_lookup " skori
2023-09-27 11:54                   ` [PATCH v7 07/12] app/graph: add ipv6_lookup " skori
2023-09-27 11:54                   ` [PATCH v7 08/12] app/graph: add neigh " skori
2023-09-27 11:54                   ` [PATCH v7 09/12] app/graph: add ethdev_rx " skori
2023-09-27 11:54                   ` [PATCH v7 10/12] app/graph: add graph " skori
2023-09-27 11:54                   ` [PATCH v7 11/12] app/graph: add CLI option to enable graph stats skori
2023-09-27 11:54                   ` [PATCH v7 12/12] app/graph: add l3fwd use case skori
2023-09-29  9:58                     ` [PATCH v8 00/12] add CLI based graph application skori
2023-09-29  9:58                       ` [PATCH v8 01/12] app/graph: add application framework to read CLI skori
2023-10-16  9:00                         ` Jerin Jacob
2023-10-17  6:19                           ` [EXT] " Sunil Kumar Kori
2023-10-18  6:33                         ` [PATCH v9 00/12] add CLI based graph application skori
2023-10-18  6:33                           ` [PATCH v9 01/12] app/graph: support application CLI framework skori
2023-10-18  6:33                           ` [PATCH v9 02/12] app/graph: support telnet connectivity framework skori
2023-10-18  6:33                           ` [PATCH v9 03/12] app/graph: support parser utility APIs skori
2023-10-18  6:33                           ` [PATCH v9 04/12] app/graph: support mempool command line interfaces skori
2023-10-18  6:33                           ` [PATCH v9 05/12] app/graph: support ethdev " skori
2023-10-18  6:33                           ` [PATCH v9 06/12] app/graph: support IPv4 lookup " skori
2023-10-18  6:33                           ` [PATCH v9 07/12] app/graph: support IPv6 " skori
2023-10-18  6:33                           ` [PATCH v9 08/12] app/graph: support neigh " skori
2023-10-18  6:33                           ` [PATCH v9 09/12] app/graph: support ethdev Rx " skori
2023-10-18  6:33                           ` [PATCH v9 10/12] app/graph: support graph " skori
2023-10-18  6:33                           ` [PATCH v9 11/12] app/graph: support CLI option to enable graph stats skori
2023-10-18  6:33                           ` [PATCH v9 12/12] app/graph: support l3fwd use case skori
2023-10-18 10:38                             ` Jerin Jacob
2023-10-19 10:49                             ` [PATCH v10 00/12] add CLI based graph application skori
2023-10-19 10:49                               ` [PATCH v10 01/12] app/graph: support application CLI framework skori
2023-10-19 10:49                               ` [PATCH v10 02/12] app/graph: support telnet connectivity framework skori
2023-10-19 10:49                               ` [PATCH v10 03/12] app/graph: support parser utility APIs skori
2023-10-19 10:49                               ` [PATCH v10 04/12] app/graph: support mempool command line interfaces skori
2023-10-19 10:49                               ` [PATCH v10 05/12] app/graph: support ethdev " skori
2023-10-19 10:49                               ` [PATCH v10 06/12] app/graph: support IPv4 lookup " skori
2023-10-19 10:49                               ` [PATCH v10 07/12] app/graph: support IPv6 " skori
2023-10-19 10:49                               ` [PATCH v10 08/12] app/graph: support neigh " skori
2023-10-19 10:49                               ` [PATCH v10 09/12] app/graph: support ethdev Rx " skori
2023-10-19 10:49                               ` [PATCH v10 10/12] app/graph: support graph " skori
2023-10-19 10:49                               ` [PATCH v10 11/12] app/graph: support CLI option to enable graph stats skori
2023-10-19 10:50                               ` [PATCH v10 12/12] app/graph: support l3fwd use case skori
2023-10-19 12:28                                 ` [EXT] " Jerin Jacob Kollanukkaran
2023-10-23  7:06                                   ` Nithin Dabilpuram
2023-10-19 17:29                                 ` [PATCH v11 00/12] add CLI based graph application skori
2023-10-19 17:30                                   ` [PATCH v11 01/12] app/graph: support application CLI framework skori
2023-10-23  7:03                                     ` Nithin Dabilpuram
2023-10-19 17:30                                   ` [PATCH v11 02/12] app/graph: support telnet connectivity framework skori
2023-10-23  7:03                                     ` Nithin Dabilpuram
2023-10-19 17:30                                   ` [PATCH v11 03/12] app/graph: support parser utility APIs skori
2023-10-23  7:03                                     ` Nithin Dabilpuram
2023-10-19 17:30                                   ` [PATCH v11 04/12] app/graph: support mempool command line interfaces skori
2023-10-23  7:04                                     ` Nithin Dabilpuram
2023-10-19 17:30                                   ` [PATCH v11 05/12] app/graph: support ethdev " skori
2023-10-23  7:04                                     ` Nithin Dabilpuram
2023-10-19 17:30                                   ` [PATCH v11 06/12] app/graph: support IPv4 lookup " skori
2023-10-23  7:04                                     ` Nithin Dabilpuram
2023-10-19 17:30                                   ` [PATCH v11 07/12] app/graph: support IPv6 " skori
2023-10-23  7:04                                     ` Nithin Dabilpuram
2023-10-19 17:30                                   ` [PATCH v11 08/12] app/graph: support neigh " skori
2023-10-23  7:05                                     ` Nithin Dabilpuram
2023-10-19 17:30                                   ` [PATCH v11 09/12] app/graph: support ethdev Rx " skori
2023-10-23  7:05                                     ` Nithin Dabilpuram
2023-10-19 17:30                                   ` [PATCH v11 10/12] app/graph: support graph " skori
2023-10-23  7:06                                     ` Nithin Dabilpuram
2023-10-19 17:30                                   ` [PATCH v11 11/12] app/graph: support CLI option to enable graph stats skori
2023-10-23  7:06                                     ` Nithin Dabilpuram
2023-10-19 17:30                                   ` [PATCH v11 12/12] app/graph: support l3fwd use case skori
2023-10-23 13:03                                   ` [PATCH v11 00/12] add CLI based graph application Sunil Kumar Kori
2023-11-03 16:44                                   ` Thomas Monjalon
2023-09-29  9:58                       ` [PATCH v8 02/12] app/graph: add telnet connectivity framework skori
2023-10-16  9:04                         ` Jerin Jacob
2023-10-17  6:21                           ` [EXT] " Sunil Kumar Kori
2023-09-29  9:58                       ` [PATCH v8 03/12] app/graph: add parser utility APIs skori
2023-10-16  9:05                         ` Jerin Jacob
2023-09-29  9:58                       ` [PATCH v8 04/12] app/graph: add mempool command line interfaces skori
2023-10-16  9:09                         ` Jerin Jacob
2023-10-17  6:22                           ` [EXT] " Sunil Kumar Kori
2023-09-29  9:58                       ` [PATCH v8 05/12] app/graph: add ethdev " skori
2023-10-16 13:20                         ` Jerin Jacob
2023-10-16 14:10                           ` Bruce Richardson
2023-10-17  6:26                             ` [EXT] " Sunil Kumar Kori
2023-09-29  9:58                       ` [PATCH v8 06/12] app/graph: add ipv4_lookup " skori
2023-10-16 15:47                         ` Jerin Jacob
2023-10-17  6:30                           ` [EXT] " Sunil Kumar Kori
2023-09-29  9:58                       ` [PATCH v8 07/12] app/graph: add ipv6_lookup " skori
2023-09-29  9:58                       ` [PATCH v8 08/12] app/graph: add neigh " skori
2023-09-29  9:58                       ` [PATCH v8 09/12] app/graph: add ethdev_rx " skori
2023-09-29  9:58                       ` [PATCH v8 10/12] app/graph: add graph " skori
2023-09-29  9:58                       ` [PATCH v8 11/12] app/graph: add CLI option to enable graph stats skori
2023-10-16 15:55                         ` Jerin Jacob
2023-09-29  9:58                       ` [PATCH v8 12/12] app/graph: add l3fwd use case skori
2023-10-16 16:01                       ` [PATCH v8 00/12] add CLI based graph application Jerin Jacob
2023-10-16 16:27                         ` Stephen Hemminger
2023-06-02 16:22   ` [PATCH v3 0/3] node: Introduce kernel_rx & kernel_tx nodes Vamsi Attunuru
2023-06-02 16:22     ` [PATCH v3 1/3] node/kernel_tx: support packet transmit to kernel Vamsi Attunuru
2023-06-05 12:47       ` Nithin Dabilpuram
2023-06-12 19:32         ` Thomas Monjalon
2023-06-02 16:22     ` [PATCH v3 2/3] node/kernel_rx: support receiving packets from kernel Vamsi Attunuru
2023-06-05 12:50       ` Nithin Dabilpuram
2023-06-02 16:22     ` [PATCH v3 3/3] node/ethdev_rx: remove hardcoded node next details Vamsi Attunuru
2023-06-05 12:51       ` Nithin Dabilpuram
2023-06-12 16:12     ` [PATCH v3 0/3] node: Introduce kernel_rx & kernel_tx nodes Vamsi Krishna Attunuru
2023-06-12 19:31     ` Thomas Monjalon

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=20230921100832.2036256-1-skori@marvell.com \
    --to=skori@marvell.com \
    --cc=dev@dpdk.org \
    /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).