From: Stephen Hemminger <stephen@networkplumber.org>
To: dev@dpdk.org
Cc: Stephen Hemminger <stephen@networkplumber.org>,
Erik Gabriel Carrillo <erik.g.carrillo@intel.com>
Subject: [PATCH 01/29] examples/timer: correct documentation errors
Date: Wed, 14 Jan 2026 14:21:42 -0800 [thread overview]
Message-ID: <20260114222458.87119-2-stephen@networkplumber.org> (raw)
In-Reply-To: <20260114222458.87119-1-stephen@networkplumber.org>
Address minor issues in timer sample documentation:
- Capitalize "linux" to "Linux"
- Complete incomplete phrase "and also on the main" to
"and also on the main lcore"
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
---
doc/guides/sample_app_ug/timer.rst | 45 +++++++++++++++---------------
1 file changed, 23 insertions(+), 22 deletions(-)
diff --git a/doc/guides/sample_app_ug/timer.rst b/doc/guides/sample_app_ug/timer.rst
index 7af35d3d67..a1149be6c3 100644
--- a/doc/guides/sample_app_ug/timer.rst
+++ b/doc/guides/sample_app_ug/timer.rst
@@ -4,20 +4,23 @@
Timer Sample Application
========================
-The Timer sample application is a simple application that demonstrates the use of a timer in a DPDK application.
-This application prints some messages from different lcores regularly, demonstrating the use of timers.
+Overview
+--------
+
+The Timer sample application demonstrates the use of a timer in a DPDK application.
+This application prints messages from different lcores at regular intervals using timers.
Compiling the Application
-------------------------
-To compile the sample application see :doc:`compiling`.
+To compile the sample application, see :doc:`compiling`.
The application is located in the ``timer`` sub-directory.
Running the Application
-----------------------
-To run the example in linux environment:
+To run the example in a Linux environment:
.. code-block:: console
@@ -29,12 +32,10 @@ the Environment Abstraction Layer (EAL) options.
Explanation
-----------
-The following sections provide some explanation of the code.
-
Initialization and Main Loop
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-In addition to EAL initialization, the timer subsystem must be initialized, by calling the rte_timer_subsystem_init() function.
+In addition to EAL initialization, the timer subsystem must be initialized by calling the ``rte_timer_subsystem_init()`` function.
.. literalinclude:: ../../../examples/timer/main.c
:language: c
@@ -44,7 +45,7 @@ In addition to EAL initialization, the timer subsystem must be initialized, by c
After timer creation (see the next paragraph), the main loop is
executed on each worker lcore using the well-known
-rte_eal_remote_launch() and also on the main.
+``rte_eal_remote_launch()`` and also on the main lcore.
.. literalinclude:: ../../../examples/timer/main.c
:language: c
@@ -61,14 +62,14 @@ The main loop is very simple in this example:
:dedent: 1
As explained in the comment, it is better to use the TSC register (as it is a per-lcore register) to check if the
-rte_timer_manage() function must be called or not.
+``rte_timer_manage()`` function must be called or not.
In this example, the resolution of the timer is 10 milliseconds.
Managing Timers
~~~~~~~~~~~~~~~
-In the main() function, the two timers are initialized.
-This call to rte_timer_init() is necessary before doing any other operation on the timer structure.
+In the ``main()`` function, the two timers are initialized.
+This call to ``rte_timer_init()`` is necessary before doing any other operation on the timer structure.
.. literalinclude:: ../../../examples/timer/main.c
:language: c
@@ -76,15 +77,15 @@ This call to rte_timer_init() is necessary before doing any other operation on t
:end-before: >8 End of init timer structures.
:dedent: 1
-Then, the two timers are configured:
+Next, the two timers are configured:
-* The first timer (timer0) is loaded on the main lcore and expires every second.
- Since the PERIODICAL flag is provided, the timer is reloaded automatically by the timer subsystem.
- The callback function is timer0_cb().
+* The first timer (``timer0``) is loaded on the main lcore and expires every second.
+ Since the ``PERIODICAL`` flag is provided, the timer is reloaded automatically by the timer subsystem.
+ The callback function is ``timer0_cb()``.
-* The second timer (timer1) is loaded on the next available lcore every 333 ms.
- The SINGLE flag means that the timer expires only once and must be reloaded manually if required.
- The callback function is timer1_cb().
+* The second timer (``timer1``) is loaded on the next available lcore every 333 ms.
+ The ``SINGLE`` flag means that the timer expires only once and must be reloaded manually if required.
+ The callback function is ``timer1_cb()``.
.. literalinclude:: ../../../examples/timer/main.c
:language: c
@@ -92,16 +93,16 @@ Then, the two timers are configured:
:end-before: >8 End of two timers configured.
:dedent: 1
-The callback for the first timer (timer0) only displays a message until a global counter reaches 20 (after 20 seconds).
-In this case, the timer is stopped using the rte_timer_stop() function.
+The callback for the first timer (``timer0``) only displays a message until a global counter reaches 20 (after 20 seconds).
+In this case, the timer is stopped using the ``rte_timer_stop()`` function.
.. literalinclude:: ../../../examples/timer/main.c
:language: c
:start-after: timer0 callback. 8<
:end-before: >8 End of timer0 callback.
-The callback for the second timer (timer1) displays a message and reloads the timer on the next lcore, using the
-rte_timer_reset() function:
+The callback for the second timer (``timer1``) displays a message and reloads the timer on the next lcore, using the
+``rte_timer_reset()`` function:
.. literalinclude:: ../../../examples/timer/main.c
:language: c
--
2.51.0
next prev parent reply other threads:[~2026-01-14 22:25 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 ` Stephen Hemminger [this message]
2026-01-14 22:21 ` [PATCH 02/29] examples/packet_ordering: correct documentation errors 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 ` [PATCH 24/29] doc/guides: improve multi-process " Stephen Hemminger
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-2-stephen@networkplumber.org \
--to=stephen@networkplumber.org \
--cc=dev@dpdk.org \
--cc=erik.g.carrillo@intel.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