From: Sunil Kumar Kori <sk...@marvell.com> In the continuation of following feedback https://patches.dpdk.org/project/dpdk/patch/20230425131516.3308612-5-vattun...@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 use case 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 | 550 ++++++++++++ app/graph/graph.h | 21 + app/graph/graph_priv.h | 70 ++ app/graph/ip4_route.c | 224 +++++ app/graph/ip6_route.c | 229 +++++ app/graph/l3fwd.c | 136 +++ app/graph/l3fwd.h | 11 + app/graph/main.c | 237 +++++ app/graph/mempool.c | 140 +++ app/graph/mempool.h | 24 + app/graph/mempool_priv.h | 34 + app/graph/meson.build | 25 + app/graph/module_api.h | 31 + app/graph/neigh.c | 366 ++++++++ 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, 4739 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