From: Stephen Hemminger <stephen@networkplumber.org>
To: dev@dpdk.org
Cc: Stephen Hemminger <stephen@networkplumber.org>,
Anatoly Burakov <anatoly.burakov@intel.com>
Subject: [PATCH 24/29] doc/guides: improve multi-process sample app guide
Date: Wed, 14 Jan 2026 14:22:05 -0800 [thread overview]
Message-ID: <20260114222458.87119-25-stephen@networkplumber.org> (raw)
In-Reply-To: <20260114222458.87119-1-stephen@networkplumber.org>
Improve the multi-process sample application documentation:
- fix section heading levels for consistency
- fix hyphenation of "packet-processing"
- improve grammar and sentence structure
- fix "gets the port information and exported" grammar
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
---
doc/guides/sample_app_ug/multi_process.rst | 27 +++++++++++-----------
1 file changed, 14 insertions(+), 13 deletions(-)
diff --git a/doc/guides/sample_app_ug/multi_process.rst b/doc/guides/sample_app_ug/multi_process.rst
index 1bd858bfb5..19e49669ad 100644
--- a/doc/guides/sample_app_ug/multi_process.rst
+++ b/doc/guides/sample_app_ug/multi_process.rst
@@ -42,9 +42,10 @@ passing at least two cores in the corelist:
./<build_dir>/examples/dpdk-simple_mp -l 0-1 --proc-type=primary
-For the first DPDK process run, the proc-type flag can be omitted or set to auto,
-since all DPDK processes will default to being a primary instance,
-meaning they have control over the hugepage shared memory regions.
+For the first DPDK process run, the proc-type flag can be omitted or set to auto
+since all DPDK processes will default to being a primary instance
+(meaning, they have control over the hugepage shared memory regions).
+
The process should start successfully and display a command prompt as follows:
.. code-block:: console
@@ -99,7 +100,7 @@ At any stage, either process can be terminated using the quit command.
The secondary process can be stopped and restarted without affecting the primary process.
How the Application Works
-^^^^^^^^^^^^^^^^^^^^^^^^^
+~~~~~~~~~~~~~~~~~~~~~~~~~
This application uses two queues and a single memory pool created in the primary process.
The secondary process then uses lookup functions to attach to these objects.
@@ -124,7 +125,7 @@ Symmetric Multi-process Example
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
The symmetric multi process example demonstrates how a set of processes can run in parallel,
-with each process performing the same set of packet- processing operations.
+with each process performing the same set of packet-processing operations.
The following diagram shows the data-flow through the application, using two processes.
.. _figure_sym_multi_proc_app:
@@ -173,7 +174,7 @@ Example:
In the above example, ``auto`` is used so the first instance becomes the primary process.
How the Application Works
-^^^^^^^^^^^^^^^^^^^^^^^^^
+~~~~~~~~~~~~~~~~~~~~~~~~~
The primary instance creates the memory pool and initializes the network ports.
@@ -183,7 +184,7 @@ The primary instance creates the memory pool and initializes the network ports.
:end-before: >8 End of primary instance initialization.
:dedent: 1
-The secondary instance gets the port information and exported by the primary process.
+The secondary instance gets the port information exported by the primary process.
The memory pool is accessed by doing a lookup for it by name:
.. code-block:: c
@@ -198,7 +199,7 @@ Each process reads from each port using the queue corresponding to its proc-id p
and writes to the corresponding transmit queue on the output port.
Client-Server Multi-process Example
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+-----------------------------------
The example multi-process application demonstrates a client-server type multi-process design.
A single server process receives a set of packets from the ports
@@ -216,7 +217,7 @@ The following diagram shows the data-flow through the application, using two cli
Running the Application
-^^^^^^^^^^^^^^^^^^^^^^^
+~~~~~~~~~~~~~~~~~~~~~~~
The server process must be run as the primary process to set up all memory structures.
In addition to the EAL parameters, the application-specific parameters are:
@@ -229,9 +230,9 @@ In addition to the EAL parameters, the application-specific parameters are:
.. note::
- In the server process, has a single thread using the lowest numbered lcore
- in the corelist, performs all packet I/O.
- If corelist parameter specifies with more than a single lcore,
+ In the server process, a single thread using the lowest numbered lcore
+ in the corelist performs all packet I/O.
+ If the corelist parameter specifies more than a single lcore,
an additional lcore will be used for a thread to print packet count periodically.
The server application stores configuration data in shared memory,
@@ -254,7 +255,7 @@ the commands are:
Any client processes that need restarting can be restarted without affecting the server process.
How the Application Works
-^^^^^^^^^^^^^^^^^^^^^^^^^
+~~~~~~~~~~~~~~~~~~~~~~~~~
The server (primary) process performs the initialization of network port and data structure
and stores its port configuration data in a memory zone in hugepage shared memory.
--
2.51.0
next prev parent reply other threads:[~2026-01-14 22:27 UTC|newest]
Thread overview: 33+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-01-14 22:21 [PATCH 00/29] doc/guides: sample application documentation improvements Stephen Hemminger
2026-01-14 22:21 ` [PATCH 01/29] examples/timer: correct documentation errors Stephen Hemminger
2026-01-14 22:21 ` [PATCH 02/29] examples/packet_ordering: " Stephen Hemminger
2026-01-14 22:21 ` [PATCH 03/29] examples/service_cores: " Stephen Hemminger
2026-01-14 22:21 ` [PATCH 04/29] examples/rxtx_callbacks: " Stephen Hemminger
2026-01-14 22:21 ` [PATCH 05/29] examples/ip_fragmentation: " Stephen Hemminger
2026-01-14 22:21 ` [PATCH 06/29] examples/eventdev_pipeline: " Stephen Hemminger
2026-01-14 22:21 ` [PATCH 07/29] doc/guides: improve VMDq sample application documentation Stephen Hemminger
2026-01-14 22:21 ` [PATCH 08/29] examples/distributor: correct documentation errors Stephen Hemminger
2026-01-14 22:21 ` [PATCH 09/29] examples/ipv4_multicast: correct documentation typo Stephen Hemminger
2026-01-14 22:21 ` [PATCH 10/29] examples/test_pipeline: correct documentation errors Stephen Hemminger
2026-01-14 22:21 ` [PATCH 11/29] examples/qos: improve sample application documentation Stephen Hemminger
2026-01-14 22:21 ` [PATCH 12/29] examples/vhost: " Stephen Hemminger
2026-01-14 22:21 ` [PATCH 13/29] examples/ptpclient: " Stephen Hemminger
2026-01-14 22:21 ` [PATCH 14/29] doc/guides: improve vDPA sample application guide Stephen Hemminger
2026-01-14 22:21 ` [PATCH 15/29] doc/guides: improve command line sample app guide Stephen Hemminger
2026-01-14 22:21 ` [PATCH 16/29] doc/guides: improve DMA " Stephen Hemminger
2026-01-19 0:47 ` fengchengwen
2026-01-14 22:21 ` [PATCH 17/29] doc/guides: improve FIPS validation " Stephen Hemminger
2026-01-19 5:59 ` [EXTERNAL] " Gowrishankar Muthukrishnan
2026-01-14 22:21 ` [PATCH 18/29] doc/guides: improve Hello World " Stephen Hemminger
2026-01-14 22:22 ` [PATCH 19/29] doc/guides: improve sample applications introduction Stephen Hemminger
2026-01-14 22:22 ` [PATCH 20/29] doc/guides: improve IP pipeline sample app guide Stephen Hemminger
2026-01-14 22:22 ` [PATCH 21/29] doc/guides: improve IP reassembly " Stephen Hemminger
2026-01-14 22:22 ` [PATCH 22/29] doc/guides: improve IPsec security gateway guide Stephen Hemminger
2026-01-14 22:22 ` [PATCH 23/29] doc/guides: improve link status interrupt sample app guide Stephen Hemminger
2026-01-14 22:22 ` Stephen Hemminger [this message]
2026-01-14 22:22 ` [PATCH 25/29] doc/guides: improve pipeline " Stephen Hemminger
2026-01-14 22:22 ` [PATCH 26/29] doc/guides: improve VM power management " Stephen Hemminger
2026-01-14 22:22 ` [PATCH 27/29] doc/guides: improve keep alive " Stephen Hemminger
2026-01-14 22:22 ` [PATCH 28/29] fix ipsec gw Stephen Hemminger
2026-01-14 23:00 ` Stephen Hemminger
2026-01-14 22:22 ` [PATCH 29/29] fix pipeline Stephen Hemminger
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=20260114222458.87119-25-stephen@networkplumber.org \
--to=stephen@networkplumber.org \
--cc=anatoly.burakov@intel.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.