DPDK patches and discussions
 help / color / mirror / Atom feed
* [dpdk-dev] [PATCH 0/4] provide man pages for binaries provided by DPDK
@ 2016-08-04 11:16 Christian Ehrhardt
  2016-08-04 11:16 ` [dpdk-dev] [PATCH 1/4] doc: rendering and installation of man pages Christian Ehrhardt
                   ` (4 more replies)
  0 siblings, 5 replies; 28+ messages in thread
From: Christian Ehrhardt @ 2016-08-04 11:16 UTC (permalink / raw)
  To: christian.ehrhardt, thomas.monjalon, dev

Hi,
this is about providing manpages for the binaries installed by DPDK.
Eventually people using commands expect at least something reasonable avalable
behind "man command".

Still it is a try to stick to the rst/sphinx based doc creation.
I found that for three of the 5 binaries that are usually installed the current
rst files are sufficient to make a meaningful man page:
- testpmd
- dpdk-pdump
- dpd-procinfo

To be clear, this is only meant for the binaries installed by DPDK,
there is no reason to render all the guides and howto's as one huge manpage.
Also this series doesn't strive to render the api doc as man pages,
while this certainly might be possible and even reasonable for section
"3   Library calls (functions within program libraries)".

Finally I must beg a pardon - I'm no makefile magician and sometimes even prefer
things that work compared to long cryptic lines with many special chars.
Yet if someone has something reasonable to unify the copy&paste in patch #4
please let me know.

Christian Ehrhardt (4):
  doc: rendering and installation of man pages
  doc: add basic invocation info for dpdk-pmdinfo
  doc: add basic invocation info for dpdk-devbind
  doc: make the devbind man page be part of section 8

 doc/guides/conf.py                   |  12 +++
 doc/guides/sample_app_ug/devbind.rst | 150 +++++++++++++++++++++++++++++++++++
 doc/guides/sample_app_ug/index.rst   |   2 +
 doc/guides/sample_app_ug/pmdinfo.rst |  62 +++++++++++++++
 mk/rte.sdkdoc.mk                     |   2 +-
 mk/rte.sdkinstall.mk                 |  11 +++
 6 files changed, 238 insertions(+), 1 deletion(-)
 create mode 100644 doc/guides/sample_app_ug/devbind.rst
 create mode 100644 doc/guides/sample_app_ug/pmdinfo.rst

-- 
2.7.4

^ permalink raw reply	[flat|nested] 28+ messages in thread

* [dpdk-dev] [PATCH 1/4] doc: rendering and installation of man pages
  2016-08-04 11:16 [dpdk-dev] [PATCH 0/4] provide man pages for binaries provided by DPDK Christian Ehrhardt
@ 2016-08-04 11:16 ` Christian Ehrhardt
  2016-08-30 14:52   ` Mcnamara, John
  2016-08-04 11:16 ` [dpdk-dev] [PATCH 2/4] doc: add basic invocation info for dpdk-pmdinfo Christian Ehrhardt
                   ` (3 subsequent siblings)
  4 siblings, 1 reply; 28+ messages in thread
From: Christian Ehrhardt @ 2016-08-04 11:16 UTC (permalink / raw)
  To: christian.ehrhardt, thomas.monjalon, dev

This enables the rendering of rst into man pages as well as installing
them (if built) along the binaries. To do so there is a new make target
"doc-guides-man" which will render the rst files into man format.

Currently these three tools had docs that were compatible "enough" to
make up for a reasonable manpage.
- testpmd
- dpdk-pdump
- dpdk-procinfo

Since a man page should be installed along the binary they are not
installed in install-doc but install-runtime insteade. If not explicitly
built by the "doc-guides-man" target before calling install-runtime there no
change to the old behaviour.

Signed-off-by: Christian Ehrhardt <christian.ehrhardt@canonical.com>
---
 doc/guides/conf.py   | 8 ++++++++
 mk/rte.sdkdoc.mk     | 2 +-
 mk/rte.sdkinstall.mk | 6 ++++++
 3 files changed, 15 insertions(+), 1 deletion(-)

diff --git a/doc/guides/conf.py b/doc/guides/conf.py
index 2c5610f..4435974 100644
--- a/doc/guides/conf.py
+++ b/doc/guides/conf.py
@@ -92,6 +92,14 @@ class CustomLatexFormatter(LatexFormatter):
 # Replace the default latex formatter.
 PygmentsBridge.latex_formatter = CustomLatexFormatter
 
+# Configuration for man pages
+man_pages = [("testpmd_app_ug/run_app", "testpmd",
+              "tests for dpdk pmds", "", 1),
+             ("sample_app_ug/pdump", "dpdk-pdump",
+              "enable packet capture on dpdk ports", "", 1),
+             ("sample_app_ug/proc_info", "dpdk-procinfo",
+              "access dpdk port stats and memory info", "", 1)]
+
 ######## :numref: fallback ########
 # The following hook functions add some simple handling for the :numref:
 # directive for Sphinx versions prior to 1.3.1. The functions replace the
diff --git a/mk/rte.sdkdoc.mk b/mk/rte.sdkdoc.mk
index 9952f25..21d9bdf 100644
--- a/mk/rte.sdkdoc.mk
+++ b/mk/rte.sdkdoc.mk
@@ -63,7 +63,7 @@ help:
 all: api-html guides-html guides-pdf
 
 .PHONY: clean
-clean: api-html-clean guides-html-clean guides-pdf-clean
+clean: api-html-clean guides-html-clean guides-pdf-clean guides-man-clean
 
 .PHONY: api-html
 api-html: api-html-clean
diff --git a/mk/rte.sdkinstall.mk b/mk/rte.sdkinstall.mk
index 5217063..533d369 100644
--- a/mk/rte.sdkinstall.mk
+++ b/mk/rte.sdkinstall.mk
@@ -66,6 +66,7 @@ includedir  ?=      $(prefix)/include/dpdk
 datarootdir ?=      $(prefix)/share
 docdir      ?=       $(datarootdir)/doc/dpdk
 datadir     ?=       $(datarootdir)/dpdk
+mandir      ?=       $(datarootdir)/man
 sdkdir      ?=                $(datadir)
 targetdir   ?=                $(datadir)/$(RTE_TARGET)
 
@@ -133,6 +134,11 @@ install-runtime:
 	                           $(DESTDIR)$(sbindir)/dpdk-devbind)
 	$(Q)$(call rte_symlink,    $(DESTDIR)$(datadir)/tools/dpdk-pmdinfo.py, \
 	                           $(DESTDIR)$(bindir)/dpdk-pmdinfo)
+ifneq ($(wildcard $O/doc/man/*/*.1),)
+	$(Q)$(call rte_mkdir,     $(DESTDIR)$(mandir))
+	$(Q)$(call rte_mkdir,     $(DESTDIR)$(mandir)/man1)
+	$(Q)cp -a $O/doc/man/*/*.1 $(DESTDIR)$(mandir)/man1
+endif
 
 install-kmod:
 ifneq ($(wildcard $O/kmod/*),)
-- 
2.7.4

^ permalink raw reply	[flat|nested] 28+ messages in thread

* [dpdk-dev] [PATCH 2/4] doc: add basic invocation info for dpdk-pmdinfo
  2016-08-04 11:16 [dpdk-dev] [PATCH 0/4] provide man pages for binaries provided by DPDK Christian Ehrhardt
  2016-08-04 11:16 ` [dpdk-dev] [PATCH 1/4] doc: rendering and installation of man pages Christian Ehrhardt
@ 2016-08-04 11:16 ` Christian Ehrhardt
  2016-08-30 14:59   ` Mcnamara, John
  2016-08-04 11:16 ` [dpdk-dev] [PATCH 3/4] doc: add basic invocation info for dpdk-devbind Christian Ehrhardt
                   ` (2 subsequent siblings)
  4 siblings, 1 reply; 28+ messages in thread
From: Christian Ehrhardt @ 2016-08-04 11:16 UTC (permalink / raw)
  To: christian.ehrhardt, thomas.monjalon, dev

This summarizes the "how to call dpdk-pmdinfo" in one place to be picked
up by html/pdf/man-page docs.

Signed-off-by: Christian Ehrhardt <christian.ehrhardt@canonical.com>
---
 doc/guides/conf.py                   |  4 ++-
 doc/guides/sample_app_ug/index.rst   |  1 +
 doc/guides/sample_app_ug/pmdinfo.rst | 62 ++++++++++++++++++++++++++++++++++++
 3 files changed, 66 insertions(+), 1 deletion(-)
 create mode 100644 doc/guides/sample_app_ug/pmdinfo.rst

diff --git a/doc/guides/conf.py b/doc/guides/conf.py
index 4435974..48fe890 100644
--- a/doc/guides/conf.py
+++ b/doc/guides/conf.py
@@ -98,7 +98,9 @@ man_pages = [("testpmd_app_ug/run_app", "testpmd",
              ("sample_app_ug/pdump", "dpdk-pdump",
               "enable packet capture on dpdk ports", "", 1),
              ("sample_app_ug/proc_info", "dpdk-procinfo",
-              "access dpdk port stats and memory info", "", 1)]
+              "access dpdk port stats and memory info", "", 1),
+             ("sample_app_ug/pmdinfo", "dpdk-pmdinfo",
+              "dump a PMDs hardware support info", "", 1)]
 
 ######## :numref: fallback ########
 # The following hook functions add some simple handling for the :numref:
diff --git a/doc/guides/sample_app_ug/index.rst b/doc/guides/sample_app_ug/index.rst
index 96bb317..7801688 100644
--- a/doc/guides/sample_app_ug/index.rst
+++ b/doc/guides/sample_app_ug/index.rst
@@ -77,6 +77,7 @@ Sample Applications User Guide
     performance_thread
     ipsec_secgw
     pdump
+    pmdinfo
 
 **Figures**
 
diff --git a/doc/guides/sample_app_ug/pmdinfo.rst b/doc/guides/sample_app_ug/pmdinfo.rst
new file mode 100644
index 0000000..6bbf7e2
--- /dev/null
+++ b/doc/guides/sample_app_ug/pmdinfo.rst
@@ -0,0 +1,62 @@
+
+..  BSD LICENSE
+    Copyright(c) 2016 Canonical Limited. All rights reserved.
+
+    Redistribution and use in source and binary forms, with or without
+    modification, are permitted provided that the following conditions
+    are met:
+
+    * Redistributions of source code must retain the above copyright
+    notice, this list of conditions and the following disclaimer.
+    * Redistributions in binary form must reproduce the above copyright
+    notice, this list of conditions and the following disclaimer in
+    the documentation and/or other materials provided with the
+    distribution.
+    * Neither the name of Intel Corporation nor the names of its
+    contributors may be used to endorse or promote products derived
+    from this software without specific prior written permission.
+
+    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+    "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+    LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+    A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+    OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+    SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+    LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+    DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+    THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+    (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+    OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+
+dpdk-pmdinfo Application
+========================
+
+The ``dpdk-pmdinfo`` tool is a Data Plane Development Kit (DPDK) tool that can
+dump a PMDs hardware support info.
+
+   .. Note::
+
+      * The actual data is stored in the object files as PMD_INFO_STRING
+
+
+Running the Application
+-----------------------
+
+The tool has a number of command line options:
+
+.. code-block:: console
+
+
+   dpdk-pmdinfo [-hrtp] [-d <pci id file] <elf-file>
+
+   -h, --help            show a short help message and exit
+   -r, --raw             Dump as raw json strings
+   -d FILE, --pcidb=FILE
+                         specify a pci database to get vendor names from
+   -t, --table           output information on hw support as a hex table
+   -p, --plugindir       scan dpdk for autoload plugins
+
+.. Note::
+
+   * Parameters inside the square brackets represents optional parameters.
-- 
2.7.4

^ permalink raw reply	[flat|nested] 28+ messages in thread

* [dpdk-dev] [PATCH 3/4] doc: add basic invocation info for dpdk-devbind
  2016-08-04 11:16 [dpdk-dev] [PATCH 0/4] provide man pages for binaries provided by DPDK Christian Ehrhardt
  2016-08-04 11:16 ` [dpdk-dev] [PATCH 1/4] doc: rendering and installation of man pages Christian Ehrhardt
  2016-08-04 11:16 ` [dpdk-dev] [PATCH 2/4] doc: add basic invocation info for dpdk-pmdinfo Christian Ehrhardt
@ 2016-08-04 11:16 ` Christian Ehrhardt
  2016-08-30 15:05   ` Mcnamara, John
  2016-08-04 11:16 ` [dpdk-dev] [PATCH 4/4] doc: make the devbind man page be part of section 8 Christian Ehrhardt
  2016-08-30 14:51 ` [dpdk-dev] [PATCH 0/4] provide man pages for binaries provided by DPDK Mcnamara, John
  4 siblings, 1 reply; 28+ messages in thread
From: Christian Ehrhardt @ 2016-08-04 11:16 UTC (permalink / raw)
  To: christian.ehrhardt, thomas.monjalon, dev

This summarizes the "how to call dpdk-pmdinfo" in one place to be
picked up by html/pdf/man-page docs.

That knowledge was available before but spread in various docs along
examples (which are great and have to be kept) as well as in the
--usage/--help option of the tool itself.

Signed-off-by: Christian Ehrhardt <christian.ehrhardt@canonical.com>
---
 doc/guides/conf.py                   |   4 +-
 doc/guides/sample_app_ug/devbind.rst | 150 +++++++++++++++++++++++++++++++++++
 doc/guides/sample_app_ug/index.rst   |   1 +
 3 files changed, 154 insertions(+), 1 deletion(-)
 create mode 100644 doc/guides/sample_app_ug/devbind.rst

diff --git a/doc/guides/conf.py b/doc/guides/conf.py
index 48fe890..ad8e8b3 100644
--- a/doc/guides/conf.py
+++ b/doc/guides/conf.py
@@ -100,7 +100,9 @@ man_pages = [("testpmd_app_ug/run_app", "testpmd",
              ("sample_app_ug/proc_info", "dpdk-procinfo",
               "access dpdk port stats and memory info", "", 1),
              ("sample_app_ug/pmdinfo", "dpdk-pmdinfo",
-              "dump a PMDs hardware support info", "", 1)]
+              "dump a PMDs hardware support info", "", 1),
+             ("sample_app_ug/devbind", "dpdk-devbind",
+              "check device status and bind/unbind them from drivers", "", 1)]
 
 ######## :numref: fallback ########
 # The following hook functions add some simple handling for the :numref:
diff --git a/doc/guides/sample_app_ug/devbind.rst b/doc/guides/sample_app_ug/devbind.rst
new file mode 100644
index 0000000..297e1b7
--- /dev/null
+++ b/doc/guides/sample_app_ug/devbind.rst
@@ -0,0 +1,150 @@
+
+..  BSD LICENSE
+    Copyright(c) 2016 Canonical Limited. All rights reserved.
+
+    Redistribution and use in source and binary forms, with or without
+    modification, are permitted provided that the following conditions
+    are met:
+
+    * Redistributions of source code must retain the above copyright
+    notice, this list of conditions and the following disclaimer.
+    * Redistributions in binary form must reproduce the above copyright
+    notice, this list of conditions and the following disclaimer in
+    the documentation and/or other materials provided with the
+    distribution.
+    * Neither the name of Intel Corporation nor the names of its
+    contributors may be used to endorse or promote products derived
+    from this software without specific prior written permission.
+
+    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+    "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+    LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+    A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+    OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+    SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+    LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+    DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+    THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+    (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+    OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+
+dpdk-devbind Application
+========================
+
+The ``dpdk-devbind`` tool is a Data Plane Development Kit (DPDK) tool that helps binding and unbinding devices from specific drivers.
+As well as checking their status in that regard.
+
+
+Running the Application
+-----------------------
+
+The tool has a number of command line options:
+
+.. code-block:: console
+
+   dpdk-devbind [options] DEVICE1 DEVICE2 ....
+
+OPTIONS
+-------
+
+* ``--help, --usage``
+
+        Display usage information and quit
+
+* ``-s, --status``
+
+        Print the current status of all known network interfaces.
+        For each device, it displays the PCI domain, bus, slot and function,
+        along with a text description of the device. Depending upon whether the
+        device is being used by a kernel driver, the igb_uio driver, or no
+        driver, other relevant information will be displayed:
+        * the Linux interface name e.g. if=eth0
+        * the driver being used e.g. drv=igb_uio
+        * any suitable drivers not currently using that device
+            e.g. unused=igb_uio
+        NOTE: if this flag is passed along with a bind/unbind option, the
+        status display will always occur after the other operations have taken
+        place.
+
+* ``-b driver, --bind=driver``
+
+        Select the driver to use or "none" to unbind the device
+
+* ``-u, --unbind``
+
+        Unbind a device (Equivalent to "-b none")
+
+* ``--force``
+
+        By default, devices which are used by Linux - as indicated by having
+        routes in the routing table - cannot be modified. Using the --force
+        flag overrides this behavior, allowing active links to be forcibly
+        unbound.
+        WARNING: This can lead to loss of network connection and should be used
+        with caution.
+
+
+.. warning::
+
+    Due to the way VFIO works, there are certain limitations to which devices can be used with VFIO.
+    Mainly it comes down to how IOMMU groups work.
+    Any Virtual Function device can be used with VFIO on its own, but physical devices will require either all ports bound to VFIO,
+    or some of them bound to VFIO while others not being bound to anything at all.
+
+    If your device is behind a PCI-to-PCI bridge, the bridge will then be part of the IOMMU group in which your device is in.
+    Therefore, the bridge driver should also be unbound from the bridge PCI device for VFIO to work with devices behind the bridge.
+
+.. warning::
+
+    While any user can run the dpdk-devbind.py script to view the status of the network ports,
+    binding or unbinding network ports requires root privileges.
+
+
+Examples
+--------
+
+To display current device status:
+.. code-block:: console
+
+   dpdk-devbind --status
+
+To bind eth1 from the current driver and move to use igb_uio
+.. code-block:: console
+
+   dpdk-devbind --bind=igb_uio eth1
+
+To unbind 0000:01:00.0 from using any driver
+.. code-block:: console
+
+   dpdk-devbind -u 0000:01:00.0
+
+To bind 0000:02:00.0 and 0000:02:00.1 to the ixgbe kernel driver
+.. code-block:: console
+
+   dpdk-devbind -b ixgbe 02:00.0 02:00.1
+
+To check status of all network ports, assign one to the igb_uio driver and check status again.
+
+.. code-block:: console
+
+   # Check the status of the available devices.
+   dpdk-devbind --status
+   Network devices using DPDK-compatible driver
+   ============================================
+   <none>
+
+   Network devices using kernel driver
+   ===================================
+   0000:0a:00.0 '82599ES 10-Gigabit' if=eth2 drv=ixgbe unused=
+
+
+   # Bind the device to igb_uio.
+   sudo dpdk-devbind -b igb_uio 0000:0a:00.0
+
+
+   # Recheck the status of the devices.
+   dpdk-devbind --status
+   Network devices using DPDK-compatible driver
+   ============================================
+   0000:0a:00.0 '82599ES 10-Gigabit' drv=igb_uio unused=
diff --git a/doc/guides/sample_app_ug/index.rst b/doc/guides/sample_app_ug/index.rst
index 7801688..c2fd566 100644
--- a/doc/guides/sample_app_ug/index.rst
+++ b/doc/guides/sample_app_ug/index.rst
@@ -78,6 +78,7 @@ Sample Applications User Guide
     ipsec_secgw
     pdump
     pmdinfo
+    devbind
 
 **Figures**
 
-- 
2.7.4

^ permalink raw reply	[flat|nested] 28+ messages in thread

* [dpdk-dev] [PATCH 4/4] doc: make the devbind man page be part of section 8
  2016-08-04 11:16 [dpdk-dev] [PATCH 0/4] provide man pages for binaries provided by DPDK Christian Ehrhardt
                   ` (2 preceding siblings ...)
  2016-08-04 11:16 ` [dpdk-dev] [PATCH 3/4] doc: add basic invocation info for dpdk-devbind Christian Ehrhardt
@ 2016-08-04 11:16 ` Christian Ehrhardt
  2016-08-30 15:12   ` Mcnamara, John
  2016-08-30 14:51 ` [dpdk-dev] [PATCH 0/4] provide man pages for binaries provided by DPDK Mcnamara, John
  4 siblings, 1 reply; 28+ messages in thread
From: Christian Ehrhardt @ 2016-08-04 11:16 UTC (permalink / raw)
  To: christian.ehrhardt, thomas.monjalon, dev

As a root only program in sbin it should belong to section 8
"8   System administration commands (usually only for root)"

Signed-off-by: Christian Ehrhardt <christian.ehrhardt@canonical.com>
---
 doc/guides/conf.py   | 2 +-
 mk/rte.sdkinstall.mk | 5 +++++
 2 files changed, 6 insertions(+), 1 deletion(-)

diff --git a/doc/guides/conf.py b/doc/guides/conf.py
index ad8e8b3..52e2acf 100644
--- a/doc/guides/conf.py
+++ b/doc/guides/conf.py
@@ -102,7 +102,7 @@ man_pages = [("testpmd_app_ug/run_app", "testpmd",
              ("sample_app_ug/pmdinfo", "dpdk-pmdinfo",
               "dump a PMDs hardware support info", "", 1),
              ("sample_app_ug/devbind", "dpdk-devbind",
-              "check device status and bind/unbind them from drivers", "", 1)]
+              "check device status and bind/unbind them from drivers", "", 8)]
 
 ######## :numref: fallback ########
 # The following hook functions add some simple handling for the :numref:
diff --git a/mk/rte.sdkinstall.mk b/mk/rte.sdkinstall.mk
index 533d369..b1faf28 100644
--- a/mk/rte.sdkinstall.mk
+++ b/mk/rte.sdkinstall.mk
@@ -139,6 +139,11 @@ ifneq ($(wildcard $O/doc/man/*/*.1),)
 	$(Q)$(call rte_mkdir,     $(DESTDIR)$(mandir)/man1)
 	$(Q)cp -a $O/doc/man/*/*.1 $(DESTDIR)$(mandir)/man1
 endif
+ifneq ($(wildcard $O/doc/man/*/*.8),)
+	$(Q)$(call rte_mkdir,     $(DESTDIR)$(mandir))
+	$(Q)$(call rte_mkdir,     $(DESTDIR)$(mandir)/man8)
+	$(Q)cp -a $O/doc/man/*/*.8 $(DESTDIR)$(mandir)/man8
+endif
 
 install-kmod:
 ifneq ($(wildcard $O/kmod/*),)
-- 
2.7.4

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [dpdk-dev] [PATCH 0/4] provide man pages for binaries provided by DPDK
  2016-08-04 11:16 [dpdk-dev] [PATCH 0/4] provide man pages for binaries provided by DPDK Christian Ehrhardt
                   ` (3 preceding siblings ...)
  2016-08-04 11:16 ` [dpdk-dev] [PATCH 4/4] doc: make the devbind man page be part of section 8 Christian Ehrhardt
@ 2016-08-30 14:51 ` Mcnamara, John
  2016-08-31  5:54   ` Panu Matilainen
  4 siblings, 1 reply; 28+ messages in thread
From: Mcnamara, John @ 2016-08-30 14:51 UTC (permalink / raw)
  To: Christian Ehrhardt, thomas.monjalon, dev

> -----Original Message-----
> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Christian Ehrhardt
> Sent: Thursday, August 4, 2016 12:17 PM
> To: christian.ehrhardt@canonical.com; thomas.monjalon@6wind.com;
> dev@dpdk.org
> Subject: [dpdk-dev] [PATCH 0/4] provide man pages for binaries provided by
> DPDK
> 
> Hi,
> this is about providing manpages for the binaries installed by DPDK.
> Eventually people using commands expect at least something reasonable
> avalable behind "man command".
> 

Hi Christian,

Thanks for that. It is really useful and the output looks very good.

I'll make a few minor comments to the patches.

John

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [dpdk-dev] [PATCH 1/4] doc: rendering and installation of man pages
  2016-08-04 11:16 ` [dpdk-dev] [PATCH 1/4] doc: rendering and installation of man pages Christian Ehrhardt
@ 2016-08-30 14:52   ` Mcnamara, John
  0 siblings, 0 replies; 28+ messages in thread
From: Mcnamara, John @ 2016-08-30 14:52 UTC (permalink / raw)
  To: Christian Ehrhardt, thomas.monjalon, dev

> -----Original Message-----
> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Christian Ehrhardt
> Sent: Thursday, August 4, 2016 12:17 PM
> To: christian.ehrhardt@canonical.com; thomas.monjalon@6wind.com;
> dev@dpdk.org
> Subject: [dpdk-dev] [PATCH 1/4] doc: rendering and installation of man
> pages
> 

Acked-by: John McNamara <john.mcnamara@intel.com>

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [dpdk-dev] [PATCH 2/4] doc: add basic invocation info for dpdk-pmdinfo
  2016-08-04 11:16 ` [dpdk-dev] [PATCH 2/4] doc: add basic invocation info for dpdk-pmdinfo Christian Ehrhardt
@ 2016-08-30 14:59   ` Mcnamara, John
  2016-08-31  7:29     ` Christian Ehrhardt
  0 siblings, 1 reply; 28+ messages in thread
From: Mcnamara, John @ 2016-08-30 14:59 UTC (permalink / raw)
  To: Christian Ehrhardt, thomas.monjalon, dev



> -----Original Message-----
> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Christian Ehrhardt
> Sent: Thursday, August 4, 2016 12:17 PM
> To: christian.ehrhardt@canonical.com; thomas.monjalon@6wind.com;
> dev@dpdk.org
> Subject: [dpdk-dev] [PATCH 2/4] doc: add basic invocation info for dpdk-
> pmdinfo
> 
> This summarizes the "how to call dpdk-pmdinfo" in one place to be picked
> up by html/pdf/man-page docs.
> 
> ...
>
>  # The following hook functions add some simple handling for the :numref:
> diff --git a/doc/guides/sample_app_ug/index.rst
> b/doc/guides/sample_app_ug/index.rst
> index 96bb317..7801688 100644
> --- a/doc/guides/sample_app_ug/index.rst
> +++ b/doc/guides/sample_app_ug/index.rst
> @@ -77,6 +77,7 @@ Sample Applications User Guide

I think these docs would be better in a "doc/guides/tools" directory.
That would be clearer in terms to the documentation structure and
also in terms of their functionality



> +dpdk-pmdinfo Application
> +========================
> +
> +The ``dpdk-pmdinfo`` tool is a Data Plane Development Kit (DPDK) tool
> +that can dump a PMDs hardware support info.

To avoid using "tool" twice in the sentence you could use "utility" the
second time.



> +
> +   .. Note::
> +
> +      * The actual data is stored in the object files as
> + PMD_INFO_STRING

I'd leave this note out of the description.


> +Running the Application
> +-----------------------
> +
> +The tool has a number of command line options:
> +
> +.. code-block:: console
> +
> +
> +   dpdk-pmdinfo [-hrtp] [-d <pci id file] <elf-file>
> +
> +   -h, --help            show a short help message and exit
> +   -r, --raw             Dump as raw json strings
> +   -d FILE, --pcidb=FILE
> +                         specify a pci database to get vendor names from
> +   -t, --table           output information on hw support as a hex table
> +   -p, --plugindir       scan dpdk for autoload plugins
> +

One of the descriptions is in sentence case and the others aren't. It should
be one or the other. I would use sentence case for all.

 

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [dpdk-dev] [PATCH 3/4] doc: add basic invocation info for dpdk-devbind
  2016-08-04 11:16 ` [dpdk-dev] [PATCH 3/4] doc: add basic invocation info for dpdk-devbind Christian Ehrhardt
@ 2016-08-30 15:05   ` Mcnamara, John
  2016-08-31  7:47     ` Christian Ehrhardt
  0 siblings, 1 reply; 28+ messages in thread
From: Mcnamara, John @ 2016-08-30 15:05 UTC (permalink / raw)
  To: Christian Ehrhardt, thomas.monjalon, dev

> -----Original Message-----
> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Christian Ehrhardt
> Sent: Thursday, August 4, 2016 12:17 PM
> To: christian.ehrhardt@canonical.com; thomas.monjalon@6wind.com;
> dev@dpdk.org
> Subject: [dpdk-dev] [PATCH 3/4] doc: add basic invocation info for dpdk-
> devbind
> 
> +
> +OPTIONS
> +-------
> +
> +* ``--help, --usage``
> +
> +        Display usage information and quit
> +
> +* ``-s, --status``
> +
> +        Print the current status of all known network interfaces.
> +        For each device, it displays the PCI domain, bus, slot and
> function,
> +        along with a text description of the device. Depending upon
> whether the
> +        device is being used by a kernel driver, the igb_uio driver, or
> no
> +        driver, other relevant information will be displayed:
> +        * the Linux interface name e.g. if=eth0
> +        * the driver being used e.g. drv=igb_uio
> +        * any suitable drivers not currently using that device
> +            e.g. unused=igb_uio
> +        NOTE: if this flag is passed along with a bind/unbind option, the
> +        status display will always occur after the other operations have
> taken
> +        place.

There are a few RST errors in this file. One of theme relates to the second
level bullet list above. There should be a blank line before and after the list.

Also, "e.g. unused=igb_uio" should be joined to, or aligned with, the previous
line.

Also, it would be better to quote any fixed width strings in the docs with ````
quotes, like ``unused=igb_uio``. This could be applied to any of the ``--options``
in the text as well.
> +Examples
> +--------
> +
> +To display current device status:
> +.. code-block:: console
> +
> +   dpdk-devbind --status
> +

All the "code-block" directives should have a blank line before them.
However it is probably better to use the simpler :: directive, like:

    To display current device status::

        dpdk-devbind --status

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [dpdk-dev] [PATCH 4/4] doc: make the devbind man page be part of section 8
  2016-08-04 11:16 ` [dpdk-dev] [PATCH 4/4] doc: make the devbind man page be part of section 8 Christian Ehrhardt
@ 2016-08-30 15:12   ` Mcnamara, John
  2016-08-31  6:45     ` Christian Ehrhardt
  0 siblings, 1 reply; 28+ messages in thread
From: Mcnamara, John @ 2016-08-30 15:12 UTC (permalink / raw)
  To: Christian Ehrhardt, thomas.monjalon, dev



> -----Original Message-----
> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Christian Ehrhardt
> Sent: Thursday, August 4, 2016 12:17 PM
> To: christian.ehrhardt@canonical.com; thomas.monjalon@6wind.com;
> dev@dpdk.org
> Subject: [dpdk-dev] [PATCH 4/4] doc: make the devbind man page be part of
> section 8
> 
> As a root only program in sbin it should belong to section 8
> "8   System administration commands (usually only for root)"
> 
> Signed-off-by: Christian Ehrhardt <christian.ehrhardt@canonical.com>
> ---
>  doc/guides/conf.py   | 2 +-
>  mk/rte.sdkinstall.mk | 5 +++++
>  2 files changed, 6 insertions(+), 1 deletion(-)
> 
> diff --git a/doc/guides/conf.py b/doc/guides/conf.py index
> ad8e8b3..52e2acf 100644
> --- a/doc/guides/conf.py
> +++ b/doc/guides/conf.py
> @@ -102,7 +102,7 @@ man_pages = [("testpmd_app_ug/run_app", "testpmd",
>               ("sample_app_ug/pmdinfo", "dpdk-pmdinfo",
>                "dump a PMDs hardware support info", "", 1),
>               ("sample_app_ug/devbind", "dpdk-devbind",
> -              "check device status and bind/unbind them from drivers",
> "", 1)]
> +              "check device status and bind/unbind them from drivers",
> + "", 8)]


Could this be rolled into one of the earlier patches?

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [dpdk-dev] [PATCH 0/4] provide man pages for binaries provided by DPDK
  2016-08-30 14:51 ` [dpdk-dev] [PATCH 0/4] provide man pages for binaries provided by DPDK Mcnamara, John
@ 2016-08-31  5:54   ` Panu Matilainen
  2016-08-31  6:46     ` Christian Ehrhardt
  0 siblings, 1 reply; 28+ messages in thread
From: Panu Matilainen @ 2016-08-31  5:54 UTC (permalink / raw)
  To: Mcnamara, John, Christian Ehrhardt, thomas.monjalon, dev

On 08/30/2016 05:51 PM, Mcnamara, John wrote:
>> -----Original Message-----
>> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Christian Ehrhardt
>> Sent: Thursday, August 4, 2016 12:17 PM
>> To: christian.ehrhardt@canonical.com; thomas.monjalon@6wind.com;
>> dev@dpdk.org
>> Subject: [dpdk-dev] [PATCH 0/4] provide man pages for binaries provided by
>> DPDK
>>
>> Hi,
>> this is about providing manpages for the binaries installed by DPDK.
>> Eventually people using commands expect at least something reasonable
>> avalable behind "man command".
>>
>
> Hi Christian,
>
> Thanks for that. It is really useful and the output looks very good.

Seconded, nice work!

	- Panu -

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [dpdk-dev] [PATCH 4/4] doc: make the devbind man page be part of section 8
  2016-08-30 15:12   ` Mcnamara, John
@ 2016-08-31  6:45     ` Christian Ehrhardt
  0 siblings, 0 replies; 28+ messages in thread
From: Christian Ehrhardt @ 2016-08-31  6:45 UTC (permalink / raw)
  To: Mcnamara, John; +Cc: thomas.monjalon, dev

Damn, I'm payed by # of commits :-P
That can of course  be squashed with the actual devbind patch.
I already thought about it before and hearing another voice asking for it
is enough to convince me.

On Tue, Aug 30, 2016 at 5:12 PM, Mcnamara, John <john.mcnamara@intel.com>
wrote:

>
>
> > -----Original Message-----
> > From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Christian Ehrhardt
> > Sent: Thursday, August 4, 2016 12:17 PM
> > To: christian.ehrhardt@canonical.com; thomas.monjalon@6wind.com;
> > dev@dpdk.org
> > Subject: [dpdk-dev] [PATCH 4/4] doc: make the devbind man page be part of
> > section 8
> >
> > As a root only program in sbin it should belong to section 8
> > "8   System administration commands (usually only for root)"
> >
> > Signed-off-by: Christian Ehrhardt <christian.ehrhardt@canonical.com>
> > ---
> >  doc/guides/conf.py   | 2 +-
> >  mk/rte.sdkinstall.mk | 5 +++++
> >  2 files changed, 6 insertions(+), 1 deletion(-)
> >
> > diff --git a/doc/guides/conf.py b/doc/guides/conf.py index
> > ad8e8b3..52e2acf 100644
> > --- a/doc/guides/conf.py
> > +++ b/doc/guides/conf.py
> > @@ -102,7 +102,7 @@ man_pages = [("testpmd_app_ug/run_app", "testpmd",
> >               ("sample_app_ug/pmdinfo", "dpdk-pmdinfo",
> >                "dump a PMDs hardware support info", "", 1),
> >               ("sample_app_ug/devbind", "dpdk-devbind",
> > -              "check device status and bind/unbind them from drivers",
> > "", 1)]
> > +              "check device status and bind/unbind them from drivers",
> > + "", 8)]
>
>
> Could this be rolled into one of the earlier patches?
>
>
>


-- 
Christian Ehrhardt
Software Engineer, Ubuntu Server
Canonical Ltd

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [dpdk-dev] [PATCH 0/4] provide man pages for binaries provided by DPDK
  2016-08-31  5:54   ` Panu Matilainen
@ 2016-08-31  6:46     ` Christian Ehrhardt
  2016-08-31  7:50       ` [dpdk-dev] [PATCH v2 " Christian Ehrhardt
  0 siblings, 1 reply; 28+ messages in thread
From: Christian Ehrhardt @ 2016-08-31  6:46 UTC (permalink / raw)
  To: Panu Matilainen; +Cc: Mcnamara, John, thomas.monjalon, dev

Thanks for the review and the feedback.
I'm trying to integrate the feedback and send a v2 today.

On Wed, Aug 31, 2016 at 7:54 AM, Panu Matilainen <pmatilai@redhat.com>
wrote:

> On 08/30/2016 05:51 PM, Mcnamara, John wrote:
>
>> -----Original Message-----
>>> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Christian Ehrhardt
>>> Sent: Thursday, August 4, 2016 12:17 PM
>>> To: christian.ehrhardt@canonical.com; thomas.monjalon@6wind.com;
>>> dev@dpdk.org
>>> Subject: [dpdk-dev] [PATCH 0/4] provide man pages for binaries provided
>>> by
>>> DPDK
>>>
>>> Hi,
>>> this is about providing manpages for the binaries installed by DPDK.
>>> Eventually people using commands expect at least something reasonable
>>> avalable behind "man command".
>>>
>>>
>> Hi Christian,
>>
>> Thanks for that. It is really useful and the output looks very good.
>>
>
> Seconded, nice work!
>
>         - Panu -
>



-- 
Christian Ehrhardt
Software Engineer, Ubuntu Server
Canonical Ltd

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [dpdk-dev] [PATCH 2/4] doc: add basic invocation info for dpdk-pmdinfo
  2016-08-30 14:59   ` Mcnamara, John
@ 2016-08-31  7:29     ` Christian Ehrhardt
  0 siblings, 0 replies; 28+ messages in thread
From: Christian Ehrhardt @ 2016-08-31  7:29 UTC (permalink / raw)
  To: Mcnamara, John; +Cc: thomas.monjalon, dev

On Tue, Aug 30, 2016 at 4:59 PM, Mcnamara, John <john.mcnamara@intel.com>
wrote:

>
> > -----Original Message-----
> > From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Christian Ehrhardt
> > Sent: Thursday, August 4, 2016 12:17 PM
> > To: christian.ehrhardt@canonical.com; thomas.monjalon@6wind.com;
> > dev@dpdk.org
> > Subject: [dpdk-dev] [PATCH 2/4] doc: add basic invocation info for dpdk-
> > pmdinfo
> >

[...]

> > --- a/doc/guides/sample_app_ug/index.rst
> > +++ b/doc/guides/sample_app_ug/index.rst
> > @@ -77,6 +77,7 @@ Sample Applications User Guide
>
> I think these docs would be better in a "doc/guides/tools" directory.
> That would be clearer in terms to the documentation structure and
> also in terms of their functionality
>

I agree that it represents the scope better then, but I was aligning myself
to the pdump and procinfo tools that are already there.
testpmd is a bit of an outlier, as that already has its own dir.
But I assume given the suggestion to move the new ones we would want to
move those other two as well then?
I thank that would serve consistency then - I'll prep a patch with that as
part of the series.


[...]

free-of-discussion ack to all other suggestions

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [dpdk-dev] [PATCH 3/4] doc: add basic invocation info for dpdk-devbind
  2016-08-30 15:05   ` Mcnamara, John
@ 2016-08-31  7:47     ` Christian Ehrhardt
  0 siblings, 0 replies; 28+ messages in thread
From: Christian Ehrhardt @ 2016-08-31  7:47 UTC (permalink / raw)
  To: Mcnamara, John; +Cc: thomas.monjalon, dev

Hi,
thanks for sharing your RST experience - I didn't see the rst issues before.
Fixed them all and checked html/man output again - looking good to me.

On Tue, Aug 30, 2016 at 5:05 PM, Mcnamara, John <john.mcnamara@intel.com>
wrote:

> > -----Original Message-----
> > From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Christian Ehrhardt
> > Sent: Thursday, August 4, 2016 12:17 PM
> > To: christian.ehrhardt@canonical.com; thomas.monjalon@6wind.com;
> > dev@dpdk.org
> > Subject: [dpdk-dev] [PATCH 3/4] doc: add basic invocation info for dpdk-
> > devbind
> >
> > +
> > +OPTIONS
> > +-------
> > +
> > +* ``--help, --usage``
> > +
> > +        Display usage information and quit
> > +
> > +* ``-s, --status``
> > +
> > +        Print the current status of all known network interfaces.
> > +        For each device, it displays the PCI domain, bus, slot and
> > function,
> > +        along with a text description of the device. Depending upon
> > whether the
> > +        device is being used by a kernel driver, the igb_uio driver, or
> > no
> > +        driver, other relevant information will be displayed:
> > +        * the Linux interface name e.g. if=eth0
> > +        * the driver being used e.g. drv=igb_uio
> > +        * any suitable drivers not currently using that device
> > +            e.g. unused=igb_uio
> > +        NOTE: if this flag is passed along with a bind/unbind option,
> the
> > +        status display will always occur after the other operations have
> > taken
> > +        place.
>
> There are a few RST errors in this file. One of theme relates to the second
> level bullet list above. There should be a blank line before and after the
> list.
>
> Also, "e.g. unused=igb_uio" should be joined to, or aligned with, the
> previous
> line.
>
> Also, it would be better to quote any fixed width strings in the docs with
> ````
> quotes, like ``unused=igb_uio``. This could be applied to any of the
> ``--options``
> in the text as well.
> > +Examples
> > +--------
> > +
> > +To display current device status:
> > +.. code-block:: console
> > +
> > +   dpdk-devbind --status
> > +
>
> All the "code-block" directives should have a blank line before them.
> However it is probably better to use the simpler :: directive, like:
>
>     To display current device status::
>
>         dpdk-devbind --status
>
>


-- 
Christian Ehrhardt
Software Engineer, Ubuntu Server
Canonical Ltd

^ permalink raw reply	[flat|nested] 28+ messages in thread

* [dpdk-dev] [PATCH v2 0/4] provide man pages for binaries provided by DPDK
  2016-08-31  6:46     ` Christian Ehrhardt
@ 2016-08-31  7:50       ` Christian Ehrhardt
  2016-08-31  7:50         ` [dpdk-dev] [PATCH v2 1/4] doc: move tool guides in their own subdirectory Christian Ehrhardt
                           ` (4 more replies)
  0 siblings, 5 replies; 28+ messages in thread
From: Christian Ehrhardt @ 2016-08-31  7:50 UTC (permalink / raw)
  To: christian.ehrhardt, thomas.monjalon, dev

*Updates in v2*
- rebased to latest upstream
- moved tools to their own guide section
- fixed some wording and indents
- properly marked fixed-width text elements
- fixed some rst issues in devbind doc

Hi,
this is about providing manpages for the binaries installed by DPDK.
Eventually people using commands expect at least something reasonable avalable
behind "man command".

Still it is a try to stick to the rst/sphinx based doc creation.
I found that for three of the 5 binaries that are usually installed the current
rst files are sufficient to make a meaningful man page:
- testpmd
- dpdk-pdump
- dpd-procinfo

To be clear, this is only meant for the binaries installed by DPDK,
there is no reason to render all the guides and howto's as one huge manpage.
Also this series doesn't strive to render the api doc as man pages,
while this certainly might be possible and even reasonable for section
"3   Library calls (functions within program libraries)".

Finally I must beg a pardon - I'm no makefile magician and sometimes even prefer
things that work compared to long cryptic lines with many special chars.
Yet if someone has something reasonable to unify the copy&paste in patch #4
please let me know.

Christian Ehrhardt (4):
  doc: move tool guides in their own subdirectory
  doc: rendering and installation of man pages
  doc: add basic invocation info for dpdk-pmdinfo
  doc: add basic invocation info for dpdk-devbind

 doc/guides/conf.py                     |  12 +++
 doc/guides/index.rst                   |   1 +
 doc/guides/sample_app_ug/index.rst     |   2 -
 doc/guides/sample_app_ug/pdump.rst     | 144 ---------------------------------
 doc/guides/sample_app_ug/proc_info.rst |  71 ----------------
 doc/guides/tools/devbind.rst           | 143 ++++++++++++++++++++++++++++++++
 doc/guides/tools/index.rst             |  42 ++++++++++
 doc/guides/tools/pdump.rst             | 144 +++++++++++++++++++++++++++++++++
 doc/guides/tools/pmdinfo.rst           |  57 +++++++++++++
 doc/guides/tools/proc_info.rst         |  71 ++++++++++++++++
 mk/rte.sdkdoc.mk                       |   2 +-
 mk/rte.sdkinstall.mk                   |  11 +++
 12 files changed, 482 insertions(+), 218 deletions(-)
 delete mode 100644 doc/guides/sample_app_ug/pdump.rst
 delete mode 100644 doc/guides/sample_app_ug/proc_info.rst
 create mode 100644 doc/guides/tools/devbind.rst
 create mode 100644 doc/guides/tools/index.rst
 create mode 100644 doc/guides/tools/pdump.rst
 create mode 100644 doc/guides/tools/pmdinfo.rst
 create mode 100644 doc/guides/tools/proc_info.rst

-- 
2.7.4

^ permalink raw reply	[flat|nested] 28+ messages in thread

* [dpdk-dev] [PATCH v2 1/4] doc: move tool guides in their own subdirectory
  2016-08-31  7:50       ` [dpdk-dev] [PATCH v2 " Christian Ehrhardt
@ 2016-08-31  7:50         ` Christian Ehrhardt
  2016-09-26 15:13           ` Mcnamara, John
  2016-08-31  7:50         ` [dpdk-dev] [PATCH v2 2/4] doc: rendering and installation of man pages Christian Ehrhardt
                           ` (3 subsequent siblings)
  4 siblings, 1 reply; 28+ messages in thread
From: Christian Ehrhardt @ 2016-08-31  7:50 UTC (permalink / raw)
  To: christian.ehrhardt, thomas.monjalon, dev

This is to clarify the scope of these documents that are more tools than
sample applications.
Also this is a preparation step to add more tools and generate man pages
off of their rst files.

Signed-off-by: Christian Ehrhardt <christian.ehrhardt@canonical.com>
---
 doc/guides/index.rst                   |   1 +
 doc/guides/sample_app_ug/index.rst     |   2 -
 doc/guides/sample_app_ug/pdump.rst     | 144 ---------------------------------
 doc/guides/sample_app_ug/proc_info.rst |  71 ----------------
 doc/guides/tools/index.rst             |  40 +++++++++
 doc/guides/tools/pdump.rst             | 144 +++++++++++++++++++++++++++++++++
 doc/guides/tools/proc_info.rst         |  71 ++++++++++++++++
 7 files changed, 256 insertions(+), 217 deletions(-)
 delete mode 100644 doc/guides/sample_app_ug/pdump.rst
 delete mode 100644 doc/guides/sample_app_ug/proc_info.rst
 create mode 100644 doc/guides/tools/index.rst
 create mode 100644 doc/guides/tools/pdump.rst
 create mode 100644 doc/guides/tools/proc_info.rst

diff --git a/doc/guides/index.rst b/doc/guides/index.rst
index 0441859..57570f6 100644
--- a/doc/guides/index.rst
+++ b/doc/guides/index.rst
@@ -41,6 +41,7 @@ DPDK documentation
    nics/index
    cryptodevs/index
    sample_app_ug/index
+   tools/index
    testpmd_app_ug/index
    faq/index
    howto/index
diff --git a/doc/guides/sample_app_ug/index.rst b/doc/guides/sample_app_ug/index.rst
index 96bb317..6573452 100644
--- a/doc/guides/sample_app_ug/index.rst
+++ b/doc/guides/sample_app_ug/index.rst
@@ -72,11 +72,9 @@ Sample Applications User Guide
     dist_app
     vm_power_management
     tep_termination
-    proc_info
     ptpclient
     performance_thread
     ipsec_secgw
-    pdump
 
 **Figures**
 
diff --git a/doc/guides/sample_app_ug/pdump.rst b/doc/guides/sample_app_ug/pdump.rst
deleted file mode 100644
index ac0e7c9..0000000
--- a/doc/guides/sample_app_ug/pdump.rst
+++ /dev/null
@@ -1,144 +0,0 @@
-
-..  BSD LICENSE
-    Copyright(c) 2016 Intel Corporation. All rights reserved.
-    All rights reserved.
-
-    Redistribution and use in source and binary forms, with or without
-    modification, are permitted provided that the following conditions
-    are met:
-
-    * Redistributions of source code must retain the above copyright
-    notice, this list of conditions and the following disclaimer.
-    * Redistributions in binary form must reproduce the above copyright
-    notice, this list of conditions and the following disclaimer in
-    the documentation and/or other materials provided with the
-    distribution.
-    * Neither the name of Intel Corporation nor the names of its
-    contributors may be used to endorse or promote products derived
-    from this software without specific prior written permission.
-
-    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-    "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-    LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-    A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-    OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-    SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-    LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-    DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-    THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-    (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-    OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-
-dpdk-pdump Application
-======================
-
-The ``dpdk-pdump`` tool is a Data Plane Development Kit (DPDK) tool that runs as
-a DPDK secondary process and is capable of enabling packet capture on dpdk ports.
-
-   .. Note::
-
-      * The ``dpdk-pdump`` tool depends on libpcap based PMD which is disabled
-        by default in the build configuration files,
-        owing to an external dependency on the libpcap development files
-        which must be installed on the board.
-        Once the libpcap development files are installed, the libpcap based PMD
-        can be enabled by setting CONFIG_RTE_LIBRTE_PMD_PCAP=y and recompiling the DPDK.
-
-
-Running the Application
------------------------
-
-The tool has a number of command line options:
-
-.. code-block:: console
-
-   ./build/app/dpdk-pdump --
-                          --pdump '(port=<port id> | device_id=<pci id or vdev name>),
-                                   (queue=<queue_id>),
-                                   (rx-dev=<iface or pcap file> |
-                                    tx-dev=<iface or pcap file>),
-                                   [ring-size=<ring size>],
-                                   [mbuf-size=<mbuf data size>],
-                                   [total-num-mbufs=<number of mbufs>]'
-                          [--server-socket-path=<server socket dir>]
-                          [--client-socket-path=<client socket dir>]
-
-The ``--pdump`` command line option is mandatory and it takes various sub arguments which are described in
-below section.
-
-   .. Note::
-
-      * Parameters inside the parentheses represents mandatory parameters.
-
-      * Parameters inside the square brackets represents optional parameters.
-
-      * Multiple instances of ``--pdump`` can be passed to capture packets on different port and queue combinations.
-
-The ``--server-socket-path`` command line option is optional. This represents the server socket directory.
-If no value is passed default values are used i.e. ``/var/run/.dpdk/`` for root users and ``~/.dpdk/``
-for non root users.
-
-The ``--client-socket-path`` command line option is optional. This represents the client socket directory.
-If no value is passed default values are used i.e. ``/var/run/.dpdk/`` for root users and ``~/.dpdk/``
-for non root users.
-
-
-The ``--pdump`` parameters
-~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-``port``:
-Port id of the eth device on which packets should be captured.
-
-``device_id``:
-PCI address (or) name of the eth device on which packets should be captured.
-
-   .. Note::
-
-      * As of now the ``dpdk-pdump`` tool cannot capture the packets of virtual devices
-        in the primary process due to a bug in the ethdev library. Due to this bug, in a multi process context,
-        when the primary and secondary have different ports set, then the secondary process
-        (here the ``dpdk-pdump`` tool) overwrites the ``rte_eth_devices[]`` entries of the primary process.
-
-``queue``:
-Queue id of the eth device on which packets should be captured. The user can pass a queue value of ``*`` to enable
-packet capture on all queues of the eth device.
-
-``rx-dev``:
-Can be either a pcap file name or any Linux iface.
-
-``tx-dev``:
-Can be either a pcap file name or any Linux iface.
-
-   .. Note::
-
-      * To receive ingress packets only, ``rx-dev`` should be passed.
-
-      * To receive egress packets only, ``tx-dev`` should be passed.
-
-      * To receive ingress and egress packets separately ``rx-dev`` and ``tx-dev``
-        should both be passed with the different file names or the Linux iface names.
-
-      * To receive ingress and egress packets separately ``rx-dev`` and ``tx-dev``
-        should both be passed with the same file names or the the Linux iface names.
-
-``ring-size``:
-Size of the ring. This value is used internally for ring creation. The ring will be used to enqueue the packets from
-the primary application to the secondary. This is an optional parameter with default size 16384.
-
-``mbuf-size``:
-Size of the mbuf data. This is used internally for mempool creation. Ideally this value must be same as
-the primary application's mempool's mbuf data size which is used for packet RX. This is an optional parameter with
-default size 2176.
-
-``total-num-mbufs``:
-Total number mbufs in mempool. This is used internally for mempool creation. This is an optional parameter with default
-value 65535.
-
-
-Example
--------
-
-.. code-block:: console
-
-   $ sudo ./build/app/dpdk-pdump -- --pdump 'port=0,queue=*,rx-dev=/tmp/rx.pcap'
diff --git a/doc/guides/sample_app_ug/proc_info.rst b/doc/guides/sample_app_ug/proc_info.rst
deleted file mode 100644
index 73f2195..0000000
--- a/doc/guides/sample_app_ug/proc_info.rst
+++ /dev/null
@@ -1,71 +0,0 @@
-
-..  BSD LICENSE
-    Copyright(c) 2015 Intel Corporation. All rights reserved.
-    All rights reserved.
-
-    Redistribution and use in source and binary forms, with or without
-    modification, are permitted provided that the following conditions
-    are met:
-
-    * Redistributions of source code must retain the above copyright
-    notice, this list of conditions and the following disclaimer.
-    * Redistributions in binary form must reproduce the above copyright
-    notice, this list of conditions and the following disclaimer in
-    the documentation and/or other materials provided with the
-    distribution.
-    * Neither the name of Intel Corporation nor the names of its
-    contributors may be used to endorse or promote products derived
-    from this software without specific prior written permission.
-
-    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-    "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-    LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-    A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-    OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-    SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-    LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-    DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-    THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-    (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-    OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-
-dpdk-procinfo Application
-=========================
-
-The dpdk-procinfo application is a Data Plane Development Kit (DPDK) application
-that runs as a DPDK secondary process and is capable of retrieving port
-statistics, resetting port statistics and printing DPDK memory information.
-This application extends the original functionality that was supported by
-dump_cfg.
-
-Running the Application
------------------------
-The application has a number of command line options:
-
-.. code-block:: console
-
-   ./$(RTE_TARGET)/app/dpdk-procinfo -- -m | [-p PORTMASK] [--stats | --xstats |
-   --stats-reset | --xstats-reset]
-
-Parameters
-~~~~~~~~~~
-**-p PORTMASK**: Hexadecimal bitmask of ports to configure.
-
-**--stats**
-The stats parameter controls the printing of generic port statistics. If no
-port mask is specified stats are printed for all DPDK ports.
-
-**--xstats**
-The stats parameter controls the printing of extended port statistics. If no
-port mask is specified xstats are printed for all DPDK ports.
-
-**--stats-reset**
-The stats-reset parameter controls the resetting of generic port statistics. If
-no port mask is specified, the generic stats are reset for all DPDK ports.
-
-**--xstats-reset**
-The xstats-reset parameter controls the resetting of extended port statistics.
-If no port mask is specified xstats are reset for all DPDK ports.
-
-**-m**: Print DPDK memory information.
diff --git a/doc/guides/tools/index.rst b/doc/guides/tools/index.rst
new file mode 100644
index 0000000..d7654a2
--- /dev/null
+++ b/doc/guides/tools/index.rst
@@ -0,0 +1,40 @@
+..  BSD LICENSE
+    Copyright(c) 2016 Canonical Limited. All rights reserved.
+    All rights reserved.
+
+    Redistribution and use in source and binary forms, with or without
+    modification, are permitted provided that the following conditions
+    are met:
+
+    * Redistributions of source code must retain the above copyright
+    notice, this list of conditions and the following disclaimer.
+    * Redistributions in binary form must reproduce the above copyright
+    notice, this list of conditions and the following disclaimer in
+    the documentation and/or other materials provided with the
+    distribution.
+    * Neither the name of Intel Corporation nor the names of its
+    contributors may be used to endorse or promote products derived
+    from this software without specific prior written permission.
+
+    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+    "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+    LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+    A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+    OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+    SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+    LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+    DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+    THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+    (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+    OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+Tool User Guides
+================
+
+.. toctree::
+    :maxdepth: 2
+    :numbered:
+
+    proc_info
+    pdump
+
diff --git a/doc/guides/tools/pdump.rst b/doc/guides/tools/pdump.rst
new file mode 100644
index 0000000..ac0e7c9
--- /dev/null
+++ b/doc/guides/tools/pdump.rst
@@ -0,0 +1,144 @@
+
+..  BSD LICENSE
+    Copyright(c) 2016 Intel Corporation. All rights reserved.
+    All rights reserved.
+
+    Redistribution and use in source and binary forms, with or without
+    modification, are permitted provided that the following conditions
+    are met:
+
+    * Redistributions of source code must retain the above copyright
+    notice, this list of conditions and the following disclaimer.
+    * Redistributions in binary form must reproduce the above copyright
+    notice, this list of conditions and the following disclaimer in
+    the documentation and/or other materials provided with the
+    distribution.
+    * Neither the name of Intel Corporation nor the names of its
+    contributors may be used to endorse or promote products derived
+    from this software without specific prior written permission.
+
+    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+    "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+    LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+    A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+    OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+    SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+    LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+    DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+    THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+    (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+    OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+
+dpdk-pdump Application
+======================
+
+The ``dpdk-pdump`` tool is a Data Plane Development Kit (DPDK) tool that runs as
+a DPDK secondary process and is capable of enabling packet capture on dpdk ports.
+
+   .. Note::
+
+      * The ``dpdk-pdump`` tool depends on libpcap based PMD which is disabled
+        by default in the build configuration files,
+        owing to an external dependency on the libpcap development files
+        which must be installed on the board.
+        Once the libpcap development files are installed, the libpcap based PMD
+        can be enabled by setting CONFIG_RTE_LIBRTE_PMD_PCAP=y and recompiling the DPDK.
+
+
+Running the Application
+-----------------------
+
+The tool has a number of command line options:
+
+.. code-block:: console
+
+   ./build/app/dpdk-pdump --
+                          --pdump '(port=<port id> | device_id=<pci id or vdev name>),
+                                   (queue=<queue_id>),
+                                   (rx-dev=<iface or pcap file> |
+                                    tx-dev=<iface or pcap file>),
+                                   [ring-size=<ring size>],
+                                   [mbuf-size=<mbuf data size>],
+                                   [total-num-mbufs=<number of mbufs>]'
+                          [--server-socket-path=<server socket dir>]
+                          [--client-socket-path=<client socket dir>]
+
+The ``--pdump`` command line option is mandatory and it takes various sub arguments which are described in
+below section.
+
+   .. Note::
+
+      * Parameters inside the parentheses represents mandatory parameters.
+
+      * Parameters inside the square brackets represents optional parameters.
+
+      * Multiple instances of ``--pdump`` can be passed to capture packets on different port and queue combinations.
+
+The ``--server-socket-path`` command line option is optional. This represents the server socket directory.
+If no value is passed default values are used i.e. ``/var/run/.dpdk/`` for root users and ``~/.dpdk/``
+for non root users.
+
+The ``--client-socket-path`` command line option is optional. This represents the client socket directory.
+If no value is passed default values are used i.e. ``/var/run/.dpdk/`` for root users and ``~/.dpdk/``
+for non root users.
+
+
+The ``--pdump`` parameters
+~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+``port``:
+Port id of the eth device on which packets should be captured.
+
+``device_id``:
+PCI address (or) name of the eth device on which packets should be captured.
+
+   .. Note::
+
+      * As of now the ``dpdk-pdump`` tool cannot capture the packets of virtual devices
+        in the primary process due to a bug in the ethdev library. Due to this bug, in a multi process context,
+        when the primary and secondary have different ports set, then the secondary process
+        (here the ``dpdk-pdump`` tool) overwrites the ``rte_eth_devices[]`` entries of the primary process.
+
+``queue``:
+Queue id of the eth device on which packets should be captured. The user can pass a queue value of ``*`` to enable
+packet capture on all queues of the eth device.
+
+``rx-dev``:
+Can be either a pcap file name or any Linux iface.
+
+``tx-dev``:
+Can be either a pcap file name or any Linux iface.
+
+   .. Note::
+
+      * To receive ingress packets only, ``rx-dev`` should be passed.
+
+      * To receive egress packets only, ``tx-dev`` should be passed.
+
+      * To receive ingress and egress packets separately ``rx-dev`` and ``tx-dev``
+        should both be passed with the different file names or the Linux iface names.
+
+      * To receive ingress and egress packets separately ``rx-dev`` and ``tx-dev``
+        should both be passed with the same file names or the the Linux iface names.
+
+``ring-size``:
+Size of the ring. This value is used internally for ring creation. The ring will be used to enqueue the packets from
+the primary application to the secondary. This is an optional parameter with default size 16384.
+
+``mbuf-size``:
+Size of the mbuf data. This is used internally for mempool creation. Ideally this value must be same as
+the primary application's mempool's mbuf data size which is used for packet RX. This is an optional parameter with
+default size 2176.
+
+``total-num-mbufs``:
+Total number mbufs in mempool. This is used internally for mempool creation. This is an optional parameter with default
+value 65535.
+
+
+Example
+-------
+
+.. code-block:: console
+
+   $ sudo ./build/app/dpdk-pdump -- --pdump 'port=0,queue=*,rx-dev=/tmp/rx.pcap'
diff --git a/doc/guides/tools/proc_info.rst b/doc/guides/tools/proc_info.rst
new file mode 100644
index 0000000..73f2195
--- /dev/null
+++ b/doc/guides/tools/proc_info.rst
@@ -0,0 +1,71 @@
+
+..  BSD LICENSE
+    Copyright(c) 2015 Intel Corporation. All rights reserved.
+    All rights reserved.
+
+    Redistribution and use in source and binary forms, with or without
+    modification, are permitted provided that the following conditions
+    are met:
+
+    * Redistributions of source code must retain the above copyright
+    notice, this list of conditions and the following disclaimer.
+    * Redistributions in binary form must reproduce the above copyright
+    notice, this list of conditions and the following disclaimer in
+    the documentation and/or other materials provided with the
+    distribution.
+    * Neither the name of Intel Corporation nor the names of its
+    contributors may be used to endorse or promote products derived
+    from this software without specific prior written permission.
+
+    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+    "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+    LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+    A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+    OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+    SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+    LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+    DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+    THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+    (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+    OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+
+dpdk-procinfo Application
+=========================
+
+The dpdk-procinfo application is a Data Plane Development Kit (DPDK) application
+that runs as a DPDK secondary process and is capable of retrieving port
+statistics, resetting port statistics and printing DPDK memory information.
+This application extends the original functionality that was supported by
+dump_cfg.
+
+Running the Application
+-----------------------
+The application has a number of command line options:
+
+.. code-block:: console
+
+   ./$(RTE_TARGET)/app/dpdk-procinfo -- -m | [-p PORTMASK] [--stats | --xstats |
+   --stats-reset | --xstats-reset]
+
+Parameters
+~~~~~~~~~~
+**-p PORTMASK**: Hexadecimal bitmask of ports to configure.
+
+**--stats**
+The stats parameter controls the printing of generic port statistics. If no
+port mask is specified stats are printed for all DPDK ports.
+
+**--xstats**
+The stats parameter controls the printing of extended port statistics. If no
+port mask is specified xstats are printed for all DPDK ports.
+
+**--stats-reset**
+The stats-reset parameter controls the resetting of generic port statistics. If
+no port mask is specified, the generic stats are reset for all DPDK ports.
+
+**--xstats-reset**
+The xstats-reset parameter controls the resetting of extended port statistics.
+If no port mask is specified xstats are reset for all DPDK ports.
+
+**-m**: Print DPDK memory information.
-- 
2.7.4

^ permalink raw reply	[flat|nested] 28+ messages in thread

* [dpdk-dev] [PATCH v2 2/4] doc: rendering and installation of man pages
  2016-08-31  7:50       ` [dpdk-dev] [PATCH v2 " Christian Ehrhardt
  2016-08-31  7:50         ` [dpdk-dev] [PATCH v2 1/4] doc: move tool guides in their own subdirectory Christian Ehrhardt
@ 2016-08-31  7:50         ` Christian Ehrhardt
  2016-09-26 15:14           ` Mcnamara, John
  2016-10-26 21:13           ` Thomas Monjalon
  2016-08-31  7:50         ` [dpdk-dev] [PATCH v2 3/4] doc: add basic invocation info for dpdk-pmdinfo Christian Ehrhardt
                           ` (2 subsequent siblings)
  4 siblings, 2 replies; 28+ messages in thread
From: Christian Ehrhardt @ 2016-08-31  7:50 UTC (permalink / raw)
  To: christian.ehrhardt, thomas.monjalon, dev

This enables the rendering of rst into man pages as well as installing
them (if built) along the binaries. To do so there is a new make target
"doc-guides-man" which will render the rst files into man format.

Currently these three tools had docs that were compatible "enough" to
make up for a reasonable manpage.
- testpmd
- dpdk-pdump
- dpdk-procinfo

Since a man page should be installed along the binary they are not
installed in install-doc but install-runtime insteade. If not explicitly
built by the "doc-guides-man" target before calling install-runtime
there is no change to the old behaviour.

Signed-off-by: Christian Ehrhardt <christian.ehrhardt@canonical.com>
---
 doc/guides/conf.py   | 8 ++++++++
 mk/rte.sdkdoc.mk     | 2 +-
 mk/rte.sdkinstall.mk | 6 ++++++
 3 files changed, 15 insertions(+), 1 deletion(-)

diff --git a/doc/guides/conf.py b/doc/guides/conf.py
index cd6a4f7..55b6b2f 100644
--- a/doc/guides/conf.py
+++ b/doc/guides/conf.py
@@ -105,6 +105,14 @@ class CustomLatexFormatter(LatexFormatter):
 # Replace the default latex formatter.
 PygmentsBridge.latex_formatter = CustomLatexFormatter
 
+# Configuration for man pages
+man_pages = [("testpmd_app_ug/run_app", "testpmd",
+              "tests for dpdk pmds", "", 1),
+             ("tools/pdump", "dpdk-pdump",
+              "enable packet capture on dpdk ports", "", 1),
+             ("tools/proc_info", "dpdk-procinfo",
+              "access dpdk port stats and memory info", "", 1)]
+
 ######## :numref: fallback ########
 # The following hook functions add some simple handling for the :numref:
 # directive for Sphinx versions prior to 1.3.1. The functions replace the
diff --git a/mk/rte.sdkdoc.mk b/mk/rte.sdkdoc.mk
index 9952f25..21d9bdf 100644
--- a/mk/rte.sdkdoc.mk
+++ b/mk/rte.sdkdoc.mk
@@ -63,7 +63,7 @@ help:
 all: api-html guides-html guides-pdf
 
 .PHONY: clean
-clean: api-html-clean guides-html-clean guides-pdf-clean
+clean: api-html-clean guides-html-clean guides-pdf-clean guides-man-clean
 
 .PHONY: api-html
 api-html: api-html-clean
diff --git a/mk/rte.sdkinstall.mk b/mk/rte.sdkinstall.mk
index 5217063..533d369 100644
--- a/mk/rte.sdkinstall.mk
+++ b/mk/rte.sdkinstall.mk
@@ -66,6 +66,7 @@ includedir  ?=      $(prefix)/include/dpdk
 datarootdir ?=      $(prefix)/share
 docdir      ?=       $(datarootdir)/doc/dpdk
 datadir     ?=       $(datarootdir)/dpdk
+mandir      ?=       $(datarootdir)/man
 sdkdir      ?=                $(datadir)
 targetdir   ?=                $(datadir)/$(RTE_TARGET)
 
@@ -133,6 +134,11 @@ install-runtime:
 	                           $(DESTDIR)$(sbindir)/dpdk-devbind)
 	$(Q)$(call rte_symlink,    $(DESTDIR)$(datadir)/tools/dpdk-pmdinfo.py, \
 	                           $(DESTDIR)$(bindir)/dpdk-pmdinfo)
+ifneq ($(wildcard $O/doc/man/*/*.1),)
+	$(Q)$(call rte_mkdir,     $(DESTDIR)$(mandir))
+	$(Q)$(call rte_mkdir,     $(DESTDIR)$(mandir)/man1)
+	$(Q)cp -a $O/doc/man/*/*.1 $(DESTDIR)$(mandir)/man1
+endif
 
 install-kmod:
 ifneq ($(wildcard $O/kmod/*),)
-- 
2.7.4

^ permalink raw reply	[flat|nested] 28+ messages in thread

* [dpdk-dev] [PATCH v2 3/4] doc: add basic invocation info for dpdk-pmdinfo
  2016-08-31  7:50       ` [dpdk-dev] [PATCH v2 " Christian Ehrhardt
  2016-08-31  7:50         ` [dpdk-dev] [PATCH v2 1/4] doc: move tool guides in their own subdirectory Christian Ehrhardt
  2016-08-31  7:50         ` [dpdk-dev] [PATCH v2 2/4] doc: rendering and installation of man pages Christian Ehrhardt
@ 2016-08-31  7:50         ` Christian Ehrhardt
  2016-09-26 15:14           ` Mcnamara, John
  2016-08-31  7:50         ` [dpdk-dev] [PATCH v2 4/4] doc: add basic invocation info for dpdk-devbind Christian Ehrhardt
  2016-09-14 11:58         ` [dpdk-dev] [PATCH v2 0/4] provide man pages for binaries provided by DPDK Luca Boccassi
  4 siblings, 1 reply; 28+ messages in thread
From: Christian Ehrhardt @ 2016-08-31  7:50 UTC (permalink / raw)
  To: christian.ehrhardt, thomas.monjalon, dev

This summarizes the "how to call dpdk-pmdinfo" in one place to be picked
up by html/pdf/man-page docs.

Signed-off-by: Christian Ehrhardt <christian.ehrhardt@canonical.com>
---
 doc/guides/conf.py           |  4 +++-
 doc/guides/tools/index.rst   |  1 +
 doc/guides/tools/pmdinfo.rst | 57 ++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 61 insertions(+), 1 deletion(-)
 create mode 100644 doc/guides/tools/pmdinfo.rst

diff --git a/doc/guides/conf.py b/doc/guides/conf.py
index 55b6b2f..c45c4be 100644
--- a/doc/guides/conf.py
+++ b/doc/guides/conf.py
@@ -111,7 +111,9 @@ man_pages = [("testpmd_app_ug/run_app", "testpmd",
              ("tools/pdump", "dpdk-pdump",
               "enable packet capture on dpdk ports", "", 1),
              ("tools/proc_info", "dpdk-procinfo",
-              "access dpdk port stats and memory info", "", 1)]
+              "access dpdk port stats and memory info", "", 1),
+             ("tools/pmdinfo", "dpdk-pmdinfo",
+              "dump a PMDs hardware support info", "", 1)]
 
 ######## :numref: fallback ########
 # The following hook functions add some simple handling for the :numref:
diff --git a/doc/guides/tools/index.rst b/doc/guides/tools/index.rst
index d7654a2..80f2115 100644
--- a/doc/guides/tools/index.rst
+++ b/doc/guides/tools/index.rst
@@ -37,4 +37,5 @@ Tool User Guides
 
     proc_info
     pdump
+    pmdinfo
 
diff --git a/doc/guides/tools/pmdinfo.rst b/doc/guides/tools/pmdinfo.rst
new file mode 100644
index 0000000..a90c59f
--- /dev/null
+++ b/doc/guides/tools/pmdinfo.rst
@@ -0,0 +1,57 @@
+
+..  BSD LICENSE
+    Copyright(c) 2016 Canonical Limited. All rights reserved.
+
+    Redistribution and use in source and binary forms, with or without
+    modification, are permitted provided that the following conditions
+    are met:
+
+    * Redistributions of source code must retain the above copyright
+    notice, this list of conditions and the following disclaimer.
+    * Redistributions in binary form must reproduce the above copyright
+    notice, this list of conditions and the following disclaimer in
+    the documentation and/or other materials provided with the
+    distribution.
+    * Neither the name of Intel Corporation nor the names of its
+    contributors may be used to endorse or promote products derived
+    from this software without specific prior written permission.
+
+    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+    "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+    LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+    A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+    OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+    SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+    LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+    DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+    THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+    (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+    OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+
+dpdk-pmdinfo Application
+========================
+
+The ``dpdk-pmdinfo`` tool is a Data Plane Development Kit (DPDK) utility that
+can dump a PMDs hardware support info.
+
+
+Running the Application
+-----------------------
+
+The tool has a number of command line options:
+
+.. code-block:: console
+
+
+   dpdk-pmdinfo [-hrtp] [-d <pci id file] <elf-file>
+
+   -h, --help            Show a short help message and exit
+   -r, --raw             Dump as raw json strings
+   -d FILE, --pcidb=FILE Specify a pci database to get vendor names from
+   -t, --table           Output information on hw support as a hex table
+   -p, --plugindir       Scan dpdk for autoload plugins
+
+.. Note::
+
+   * Parameters inside the square brackets represents optional parameters.
-- 
2.7.4

^ permalink raw reply	[flat|nested] 28+ messages in thread

* [dpdk-dev] [PATCH v2 4/4] doc: add basic invocation info for dpdk-devbind
  2016-08-31  7:50       ` [dpdk-dev] [PATCH v2 " Christian Ehrhardt
                           ` (2 preceding siblings ...)
  2016-08-31  7:50         ` [dpdk-dev] [PATCH v2 3/4] doc: add basic invocation info for dpdk-pmdinfo Christian Ehrhardt
@ 2016-08-31  7:50         ` Christian Ehrhardt
  2016-09-26 15:15           ` Mcnamara, John
  2016-09-14 11:58         ` [dpdk-dev] [PATCH v2 0/4] provide man pages for binaries provided by DPDK Luca Boccassi
  4 siblings, 1 reply; 28+ messages in thread
From: Christian Ehrhardt @ 2016-08-31  7:50 UTC (permalink / raw)
  To: christian.ehrhardt, thomas.monjalon, dev

This summarizes the "how to call dpdk-pmdinfo" in one place to be
picked up by html/pdf/man-page docs.

That knowledge was available before but spread in various docs along
examples (which are great and have to be kept) as well as in the
--usage/--help option of the tool itself.

As a root only program in sbin it should belong to section 8
"8   System administration commands (usually only for root)"

Signed-off-by: Christian Ehrhardt <christian.ehrhardt@canonical.com>
---
 doc/guides/conf.py           |   4 +-
 doc/guides/tools/devbind.rst | 143 +++++++++++++++++++++++++++++++++++++++++++
 doc/guides/tools/index.rst   |   1 +
 mk/rte.sdkinstall.mk         |   5 ++
 4 files changed, 152 insertions(+), 1 deletion(-)
 create mode 100644 doc/guides/tools/devbind.rst

diff --git a/doc/guides/conf.py b/doc/guides/conf.py
index c45c4be..149bcdb 100644
--- a/doc/guides/conf.py
+++ b/doc/guides/conf.py
@@ -113,7 +113,9 @@ man_pages = [("testpmd_app_ug/run_app", "testpmd",
              ("tools/proc_info", "dpdk-procinfo",
               "access dpdk port stats and memory info", "", 1),
              ("tools/pmdinfo", "dpdk-pmdinfo",
-              "dump a PMDs hardware support info", "", 1)]
+              "dump a PMDs hardware support info", "", 1),
+             ("tools/devbind", "dpdk-devbind",
+              "check device status and bind/unbind them from drivers", "", 8)]
 
 ######## :numref: fallback ########
 # The following hook functions add some simple handling for the :numref:
diff --git a/doc/guides/tools/devbind.rst b/doc/guides/tools/devbind.rst
new file mode 100644
index 0000000..18a8059
--- /dev/null
+++ b/doc/guides/tools/devbind.rst
@@ -0,0 +1,143 @@
+
+..  BSD LICENSE
+    Copyright(c) 2016 Canonical Limited. All rights reserved.
+
+    Redistribution and use in source and binary forms, with or without
+    modification, are permitted provided that the following conditions
+    are met:
+
+    * Redistributions of source code must retain the above copyright
+    notice, this list of conditions and the following disclaimer.
+    * Redistributions in binary form must reproduce the above copyright
+    notice, this list of conditions and the following disclaimer in
+    the documentation and/or other materials provided with the
+    distribution.
+    * Neither the name of Intel Corporation nor the names of its
+    contributors may be used to endorse or promote products derived
+    from this software without specific prior written permission.
+
+    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+    "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+    LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+    A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+    OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+    SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+    LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+    DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+    THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+    (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+    OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+
+dpdk-devbind Application
+========================
+
+The ``dpdk-devbind`` tool is a Data Plane Development Kit (DPDK) tool that helps binding and unbinding devices from specific drivers.
+As well as checking their status in that regard.
+
+
+Running the Application
+-----------------------
+
+The tool has a number of command line options:
+
+.. code-block:: console
+
+   dpdk-devbind [options] DEVICE1 DEVICE2 ....
+
+OPTIONS
+-------
+
+* ``--help, --usage``
+
+        Display usage information and quit
+
+* ``-s, --status``
+
+        Print the current status of all known network interfaces.
+        For each device, it displays the PCI domain, bus, slot and function,
+        along with a text description of the device. Depending upon whether the
+        device is being used by a kernel driver, the ``igb_uio`` driver, or no
+        driver, other relevant information will be displayed:
+        - the Linux interface name e.g. ``if=eth0``
+        - the driver being used e.g. ``drv=igb_uio``
+        - any suitable drivers not currently using that device e.g. ``unused=igb_uio``
+        NOTE: if this flag is passed along with a bind/unbind option, the
+        status display will always occur after the other operations have taken
+        place.
+
+* ``-b driver, --bind=driver``
+
+        Select the driver to use or "none" to unbind the device
+
+* ``-u, --unbind``
+
+        Unbind a device (Equivalent to ``-b none``)
+
+* ``--force``
+
+        By default, devices which are used by Linux - as indicated by having
+        routes in the routing table - cannot be modified. Using the ``--force``
+        flag overrides this behavior, allowing active links to be forcibly
+        unbound.
+        WARNING: This can lead to loss of network connection and should be used
+        with caution.
+
+
+.. warning::
+
+    Due to the way VFIO works, there are certain limitations to which devices can be used with VFIO.
+    Mainly it comes down to how IOMMU groups work.
+    Any Virtual Function device can be used with VFIO on its own, but physical devices will require either all ports bound to VFIO,
+    or some of them bound to VFIO while others not being bound to anything at all.
+
+    If your device is behind a PCI-to-PCI bridge, the bridge will then be part of the IOMMU group in which your device is in.
+    Therefore, the bridge driver should also be unbound from the bridge PCI device for VFIO to work with devices behind the bridge.
+
+.. warning::
+
+    While any user can run the ``dpdk-devbind.py`` script to view the status of the network ports,
+    binding or unbinding network ports requires root privileges.
+
+
+Examples
+--------
+
+To display current device status::
+
+   dpdk-devbind --status
+
+To bind eth1 from the current driver and move to use igb_uio::
+
+   dpdk-devbind --bind=igb_uio eth1
+
+To unbind 0000:01:00.0 from using any driver::
+
+   dpdk-devbind -u 0000:01:00.0
+
+To bind 0000:02:00.0 and 0000:02:00.1 to the ixgbe kernel driver::
+
+   dpdk-devbind -b ixgbe 02:00.0 02:00.1
+
+To check status of all network ports, assign one to the igb_uio driver and check status again::
+
+   # Check the status of the available devices.
+   dpdk-devbind --status
+   Network devices using DPDK-compatible driver
+   ============================================
+   <none>
+
+   Network devices using kernel driver
+   ===================================
+   0000:0a:00.0 '82599ES 10-Gigabit' if=eth2 drv=ixgbe unused=
+
+
+   # Bind the device to igb_uio.
+   sudo dpdk-devbind -b igb_uio 0000:0a:00.0
+
+
+   # Recheck the status of the devices.
+   dpdk-devbind --status
+   Network devices using DPDK-compatible driver
+   ============================================
+   0000:0a:00.0 '82599ES 10-Gigabit' drv=igb_uio unused=
diff --git a/doc/guides/tools/index.rst b/doc/guides/tools/index.rst
index 80f2115..cbe98b2 100644
--- a/doc/guides/tools/index.rst
+++ b/doc/guides/tools/index.rst
@@ -38,4 +38,5 @@ Tool User Guides
     proc_info
     pdump
     pmdinfo
+    devbind
 
diff --git a/mk/rte.sdkinstall.mk b/mk/rte.sdkinstall.mk
index 533d369..b1faf28 100644
--- a/mk/rte.sdkinstall.mk
+++ b/mk/rte.sdkinstall.mk
@@ -139,6 +139,11 @@ ifneq ($(wildcard $O/doc/man/*/*.1),)
 	$(Q)$(call rte_mkdir,     $(DESTDIR)$(mandir)/man1)
 	$(Q)cp -a $O/doc/man/*/*.1 $(DESTDIR)$(mandir)/man1
 endif
+ifneq ($(wildcard $O/doc/man/*/*.8),)
+	$(Q)$(call rte_mkdir,     $(DESTDIR)$(mandir))
+	$(Q)$(call rte_mkdir,     $(DESTDIR)$(mandir)/man8)
+	$(Q)cp -a $O/doc/man/*/*.8 $(DESTDIR)$(mandir)/man8
+endif
 
 install-kmod:
 ifneq ($(wildcard $O/kmod/*),)
-- 
2.7.4

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [dpdk-dev] [PATCH v2 0/4] provide man pages for binaries provided by DPDK
  2016-08-31  7:50       ` [dpdk-dev] [PATCH v2 " Christian Ehrhardt
                           ` (3 preceding siblings ...)
  2016-08-31  7:50         ` [dpdk-dev] [PATCH v2 4/4] doc: add basic invocation info for dpdk-devbind Christian Ehrhardt
@ 2016-09-14 11:58         ` Luca Boccassi
  2016-10-26 21:32           ` Thomas Monjalon
  4 siblings, 1 reply; 28+ messages in thread
From: Luca Boccassi @ 2016-09-14 11:58 UTC (permalink / raw)
  To: christian.ehrhardt; +Cc: dev

On Wed, 2016-08-31 at 09:50 +0200, Christian Ehrhardt wrote:
> *Updates in v2*
> - rebased to latest upstream
> - moved tools to their own guide section
> - fixed some wording and indents
> - properly marked fixed-width text elements
> - fixed some rst issues in devbind doc
> 
> Hi,
> this is about providing manpages for the binaries installed by DPDK.
> Eventually people using commands expect at least something reasonable avalable
> behind "man command".
> 
> Still it is a try to stick to the rst/sphinx based doc creation.
> I found that for three of the 5 binaries that are usually installed the current
> rst files are sufficient to make a meaningful man page:
> - testpmd
> - dpdk-pdump
> - dpd-procinfo
> 
> To be clear, this is only meant for the binaries installed by DPDK,
> there is no reason to render all the guides and howto's as one huge manpage.
> Also this series doesn't strive to render the api doc as man pages,
> while this certainly might be possible and even reasonable for section
> "3   Library calls (functions within program libraries)".
> 
> Finally I must beg a pardon - I'm no makefile magician and sometimes even prefer
> things that work compared to long cryptic lines with many special chars.
> Yet if someone has something reasonable to unify the copy&paste in patch #4
> please let me know.
> 
> Christian Ehrhardt (4):
>   doc: move tool guides in their own subdirectory
>   doc: rendering and installation of man pages
>   doc: add basic invocation info for dpdk-pmdinfo
>   doc: add basic invocation info for dpdk-devbind
> 
>  doc/guides/conf.py                     |  12 +++
>  doc/guides/index.rst                   |   1 +
>  doc/guides/sample_app_ug/index.rst     |   2 -
>  doc/guides/sample_app_ug/pdump.rst     | 144 ---------------------------------
>  doc/guides/sample_app_ug/proc_info.rst |  71 ----------------
>  doc/guides/tools/devbind.rst           | 143 ++++++++++++++++++++++++++++++++
>  doc/guides/tools/index.rst             |  42 ++++++++++
>  doc/guides/tools/pdump.rst             | 144 +++++++++++++++++++++++++++++++++
>  doc/guides/tools/pmdinfo.rst           |  57 +++++++++++++
>  doc/guides/tools/proc_info.rst         |  71 ++++++++++++++++
>  mk/rte.sdkdoc.mk                       |   2 +-
>  mk/rte.sdkinstall.mk                   |  11 +++
>  12 files changed, 482 insertions(+), 218 deletions(-)
>  delete mode 100644 doc/guides/sample_app_ug/pdump.rst
>  delete mode 100644 doc/guides/sample_app_ug/proc_info.rst
>  create mode 100644 doc/guides/tools/devbind.rst
>  create mode 100644 doc/guides/tools/index.rst
>  create mode 100644 doc/guides/tools/pdump.rst
>  create mode 100644 doc/guides/tools/pmdinfo.rst
>  create mode 100644 doc/guides/tools/proc_info.rst

Acked-by: Luca Boccassi <lboccass@brocade.com>

-- 
Kind regards,
Luca Boccassi

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [dpdk-dev] [PATCH v2 1/4] doc: move tool guides in their own subdirectory
  2016-08-31  7:50         ` [dpdk-dev] [PATCH v2 1/4] doc: move tool guides in their own subdirectory Christian Ehrhardt
@ 2016-09-26 15:13           ` Mcnamara, John
  2016-09-26 16:16             ` Christian Ehrhardt
  0 siblings, 1 reply; 28+ messages in thread
From: Mcnamara, John @ 2016-09-26 15:13 UTC (permalink / raw)
  To: Christian Ehrhardt, thomas.monjalon, dev



> -----Original Message-----
> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Christian Ehrhardt
> Sent: Wednesday, August 31, 2016 8:50 AM
> To: christian.ehrhardt@canonical.com; thomas.monjalon@6wind.com;
> dev@dpdk.org
> Subject: [dpdk-dev] [PATCH v2 1/4] doc: move tool guides in their own
> subdirectory
> 
> This is to clarify the scope of these documents that are more tools than
> sample applications.
> Also this is a preparation step to add more tools and generate man pages
> off of their rst files.
> 
> Signed-off-by: Christian Ehrhardt <christian.ehrhardt@canonical.com>

P.S. Could you mark the V1 version as "superseded" in PatchWork.


Acked-by: John McNamara <john.mcnamara@intel.com>

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [dpdk-dev] [PATCH v2 2/4] doc: rendering and installation of man pages
  2016-08-31  7:50         ` [dpdk-dev] [PATCH v2 2/4] doc: rendering and installation of man pages Christian Ehrhardt
@ 2016-09-26 15:14           ` Mcnamara, John
  2016-10-26 21:13           ` Thomas Monjalon
  1 sibling, 0 replies; 28+ messages in thread
From: Mcnamara, John @ 2016-09-26 15:14 UTC (permalink / raw)
  To: Christian Ehrhardt, thomas.monjalon, dev



> -----Original Message-----
> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Christian Ehrhardt
> Sent: Wednesday, August 31, 2016 8:50 AM
> To: christian.ehrhardt@canonical.com; thomas.monjalon@6wind.com;
> dev@dpdk.org
> Subject: [dpdk-dev] [PATCH v2 2/4] doc: rendering and installation of man
> pages
> 
> This enables the rendering of rst into man pages as well as installing
> them (if built) along the binaries. To do so there is a new make target
> "doc-guides-man" which will render the rst files into man format.
> 
> Currently these three tools had docs that were compatible "enough" to make
> up for a reasonable manpage.
> - testpmd
> - dpdk-pdump
> - dpdk-procinfo
> 
> Since a man page should be installed along the binary they are not
> installed in install-doc but install-runtime insteade. If not explicitly
> built by the "doc-guides-man" target before calling install-runtime there
> is no change to the old behaviour.
> 
> Signed-off-by: Christian Ehrhardt <christian.ehrhardt@canonical.com>

Acked-by: John McNamara <john.mcnamara@intel.com>

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [dpdk-dev] [PATCH v2 3/4] doc: add basic invocation info for dpdk-pmdinfo
  2016-08-31  7:50         ` [dpdk-dev] [PATCH v2 3/4] doc: add basic invocation info for dpdk-pmdinfo Christian Ehrhardt
@ 2016-09-26 15:14           ` Mcnamara, John
  0 siblings, 0 replies; 28+ messages in thread
From: Mcnamara, John @ 2016-09-26 15:14 UTC (permalink / raw)
  To: Christian Ehrhardt, thomas.monjalon, dev



> -----Original Message-----
> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Christian Ehrhardt
> Sent: Wednesday, August 31, 2016 8:50 AM
> To: christian.ehrhardt@canonical.com; thomas.monjalon@6wind.com;
> dev@dpdk.org
> Subject: [dpdk-dev] [PATCH v2 3/4] doc: add basic invocation info for
> dpdk-pmdinfo
> 
> This summarizes the "how to call dpdk-pmdinfo" in one place to be picked
> up by html/pdf/man-page docs.
> 
> Signed-off-by: Christian Ehrhardt <christian.ehrhardt@canonical.com>

Acked-by: John McNamara <john.mcnamara@intel.com>

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [dpdk-dev] [PATCH v2 4/4] doc: add basic invocation info for dpdk-devbind
  2016-08-31  7:50         ` [dpdk-dev] [PATCH v2 4/4] doc: add basic invocation info for dpdk-devbind Christian Ehrhardt
@ 2016-09-26 15:15           ` Mcnamara, John
  0 siblings, 0 replies; 28+ messages in thread
From: Mcnamara, John @ 2016-09-26 15:15 UTC (permalink / raw)
  To: Christian Ehrhardt, thomas.monjalon, dev



> -----Original Message-----
> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Christian Ehrhardt
> Sent: Wednesday, August 31, 2016 8:50 AM
> To: christian.ehrhardt@canonical.com; thomas.monjalon@6wind.com;
> dev@dpdk.org
> Subject: [dpdk-dev] [PATCH v2 4/4] doc: add basic invocation info for
> dpdk-devbind
> 
> This summarizes the "how to call dpdk-pmdinfo" in one place to be picked
> up by html/pdf/man-page docs.
> 
> That knowledge was available before but spread in various docs along
> examples (which are great and have to be kept) as well as in the --usage/-
> -help option of the tool itself.
> 
> As a root only program in sbin it should belong to section 8
> "8   System administration commands (usually only for root)"
> 
> Signed-off-by: Christian Ehrhardt <christian.ehrhardt@canonical.com>
>
> ...
>
> +dpdk-devbind Application
> +========================
> +
> +The ``dpdk-devbind`` tool is a Data Plane Development Kit (DPDK) tool
> that helps binding and unbinding devices from specific drivers.
> +As well as checking their status in that regard.

You didn't make the s/too/utility/ change like in 3/4. However, that is minor.

Acked-by: John McNamara <john.mcnamara@intel.com>

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [dpdk-dev] [PATCH v2 1/4] doc: move tool guides in their own subdirectory
  2016-09-26 15:13           ` Mcnamara, John
@ 2016-09-26 16:16             ` Christian Ehrhardt
  0 siblings, 0 replies; 28+ messages in thread
From: Christian Ehrhardt @ 2016-09-26 16:16 UTC (permalink / raw)
  To: Mcnamara, John; +Cc: thomas.monjalon, dev

On Mon, Sep 26, 2016 at 5:13 PM, Mcnamara, John <john.mcnamara@intel.com>
wrote:

>
> P.S. Could you mark the V1 version as "superseded" in PatchWork.


Done

I'd have thought it does that automatically.
But maybe it failed to identify them as belonging together.

Thanks for the hint - cleanup is always good.


-- 
Christian Ehrhardt
Software Engineer, Ubuntu Server
Canonical Ltd

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [dpdk-dev] [PATCH v2 2/4] doc: rendering and installation of man pages
  2016-08-31  7:50         ` [dpdk-dev] [PATCH v2 2/4] doc: rendering and installation of man pages Christian Ehrhardt
  2016-09-26 15:14           ` Mcnamara, John
@ 2016-10-26 21:13           ` Thomas Monjalon
  1 sibling, 0 replies; 28+ messages in thread
From: Thomas Monjalon @ 2016-10-26 21:13 UTC (permalink / raw)
  To: Christian Ehrhardt; +Cc: dev

2016-08-31 09:50, Christian Ehrhardt:
> +ifneq ($(wildcard $O/doc/man/*/*.1),)
> +	$(Q)$(call rte_mkdir,     $(DESTDIR)$(mandir))

This line is useless because implicit in the next one.

> +	$(Q)$(call rte_mkdir,     $(DESTDIR)$(mandir)/man1)
> +	$(Q)cp -a $O/doc/man/*/*.1 $(DESTDIR)$(mandir)/man1
> +endif

There is also a small alignment issue.

^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: [dpdk-dev] [PATCH v2 0/4] provide man pages for binaries provided by DPDK
  2016-09-14 11:58         ` [dpdk-dev] [PATCH v2 0/4] provide man pages for binaries provided by DPDK Luca Boccassi
@ 2016-10-26 21:32           ` Thomas Monjalon
  0 siblings, 0 replies; 28+ messages in thread
From: Thomas Monjalon @ 2016-10-26 21:32 UTC (permalink / raw)
  To: christian.ehrhardt; +Cc: dev

> > Christian Ehrhardt (4):
> >   doc: move tool guides in their own subdirectory
> >   doc: rendering and installation of man pages
> >   doc: add basic invocation info for dpdk-pmdinfo
> >   doc: add basic invocation info for dpdk-devbind
> 
> Acked-by: Luca Boccassi <lboccass@brocade.com>

Applied with minor comments from John and me fixed, thanks

^ permalink raw reply	[flat|nested] 28+ messages in thread

end of thread, other threads:[~2016-10-26 21:32 UTC | newest]

Thread overview: 28+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-08-04 11:16 [dpdk-dev] [PATCH 0/4] provide man pages for binaries provided by DPDK Christian Ehrhardt
2016-08-04 11:16 ` [dpdk-dev] [PATCH 1/4] doc: rendering and installation of man pages Christian Ehrhardt
2016-08-30 14:52   ` Mcnamara, John
2016-08-04 11:16 ` [dpdk-dev] [PATCH 2/4] doc: add basic invocation info for dpdk-pmdinfo Christian Ehrhardt
2016-08-30 14:59   ` Mcnamara, John
2016-08-31  7:29     ` Christian Ehrhardt
2016-08-04 11:16 ` [dpdk-dev] [PATCH 3/4] doc: add basic invocation info for dpdk-devbind Christian Ehrhardt
2016-08-30 15:05   ` Mcnamara, John
2016-08-31  7:47     ` Christian Ehrhardt
2016-08-04 11:16 ` [dpdk-dev] [PATCH 4/4] doc: make the devbind man page be part of section 8 Christian Ehrhardt
2016-08-30 15:12   ` Mcnamara, John
2016-08-31  6:45     ` Christian Ehrhardt
2016-08-30 14:51 ` [dpdk-dev] [PATCH 0/4] provide man pages for binaries provided by DPDK Mcnamara, John
2016-08-31  5:54   ` Panu Matilainen
2016-08-31  6:46     ` Christian Ehrhardt
2016-08-31  7:50       ` [dpdk-dev] [PATCH v2 " Christian Ehrhardt
2016-08-31  7:50         ` [dpdk-dev] [PATCH v2 1/4] doc: move tool guides in their own subdirectory Christian Ehrhardt
2016-09-26 15:13           ` Mcnamara, John
2016-09-26 16:16             ` Christian Ehrhardt
2016-08-31  7:50         ` [dpdk-dev] [PATCH v2 2/4] doc: rendering and installation of man pages Christian Ehrhardt
2016-09-26 15:14           ` Mcnamara, John
2016-10-26 21:13           ` Thomas Monjalon
2016-08-31  7:50         ` [dpdk-dev] [PATCH v2 3/4] doc: add basic invocation info for dpdk-pmdinfo Christian Ehrhardt
2016-09-26 15:14           ` Mcnamara, John
2016-08-31  7:50         ` [dpdk-dev] [PATCH v2 4/4] doc: add basic invocation info for dpdk-devbind Christian Ehrhardt
2016-09-26 15:15           ` Mcnamara, John
2016-09-14 11:58         ` [dpdk-dev] [PATCH v2 0/4] provide man pages for binaries provided by DPDK Luca Boccassi
2016-10-26 21:32           ` Thomas Monjalon

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).