get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

GET /api/patches/63253/?format=api
HTTP 200 OK
Allow: GET, PUT, PATCH, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "id": 63253,
    "url": "http://patches.dpdk.org/api/patches/63253/?format=api",
    "web_url": "http://patches.dpdk.org/project/dpdk/patch/20191122160359.11625-8-bruce.richardson@intel.com/",
    "project": {
        "id": 1,
        "url": "http://patches.dpdk.org/api/projects/1/?format=api",
        "name": "DPDK",
        "link_name": "dpdk",
        "list_id": "dev.dpdk.org",
        "list_email": "dev@dpdk.org",
        "web_url": "http://core.dpdk.org",
        "scm_url": "git://dpdk.org/dpdk",
        "webscm_url": "http://git.dpdk.org/dpdk",
        "list_archive_url": "https://inbox.dpdk.org/dev",
        "list_archive_url_format": "https://inbox.dpdk.org/dev/{}",
        "commit_url_format": ""
    },
    "msgid": "<20191122160359.11625-8-bruce.richardson@intel.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/20191122160359.11625-8-bruce.richardson@intel.com",
    "date": "2019-11-22T16:03:58",
    "name": "[7/8] doc: update documentation on build and running FreeBSD apps",
    "commit_ref": null,
    "pull_url": null,
    "state": "superseded",
    "archived": true,
    "hash": "9dfb4598f6bf5db46d81a865d36b488c2a105bb6",
    "submitter": {
        "id": 20,
        "url": "http://patches.dpdk.org/api/people/20/?format=api",
        "name": "Bruce Richardson",
        "email": "bruce.richardson@intel.com"
    },
    "delegate": null,
    "mbox": "http://patches.dpdk.org/project/dpdk/patch/20191122160359.11625-8-bruce.richardson@intel.com/mbox/",
    "series": [
        {
            "id": 7590,
            "url": "http://patches.dpdk.org/api/series/7590/?format=api",
            "web_url": "http://patches.dpdk.org/project/dpdk/list/?series=7590",
            "date": "2019-11-22T16:03:53",
            "name": "GSG Documentation updates",
            "version": 1,
            "mbox": "http://patches.dpdk.org/series/7590/mbox/"
        }
    ],
    "comments": "http://patches.dpdk.org/api/patches/63253/comments/",
    "check": "fail",
    "checks": "http://patches.dpdk.org/api/patches/63253/checks/",
    "tags": {},
    "related": [],
    "headers": {
        "Return-Path": "<dev-bounces@dpdk.org>",
        "X-Original-To": "patchwork@inbox.dpdk.org",
        "Delivered-To": "patchwork@inbox.dpdk.org",
        "Received": [
            "from dpdk.org (dpdk.org [92.243.14.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id EB436A04C3;\n\tFri, 22 Nov 2019 17:05:25 +0100 (CET)",
            "from [92.243.14.124] (localhost [127.0.0.1])\n\tby dpdk.org (Postfix) with ESMTP id 89E301BE9F;\n\tFri, 22 Nov 2019 17:04:30 +0100 (CET)",
            "from mga02.intel.com (mga02.intel.com [134.134.136.20])\n by dpdk.org (Postfix) with ESMTP id ED9692BB1\n for <dev@dpdk.org>; Fri, 22 Nov 2019 17:04:18 +0100 (CET)",
            "from fmsmga006.fm.intel.com ([10.253.24.20])\n by orsmga101.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384;\n 22 Nov 2019 08:04:18 -0800",
            "from silpixa00399126.ir.intel.com (HELO\n silpixa00399126.ger.corp.intel.com) ([10.237.223.2])\n by fmsmga006.fm.intel.com with ESMTP; 22 Nov 2019 08:04:17 -0800"
        ],
        "X-Amp-Result": "SKIPPED(no attachment in message)",
        "X-Amp-File-Uploaded": "False",
        "X-ExtLoop1": "1",
        "X-IronPort-AV": "E=Sophos;i=\"5.69,230,1571727600\"; d=\"scan'208\";a=\"408931125\"",
        "From": "Bruce Richardson <bruce.richardson@intel.com>",
        "To": "john.mcnamara@intel.com",
        "Cc": "dev@dpdk.org,\n\tBruce Richardson <bruce.richardson@intel.com>",
        "Date": "Fri, 22 Nov 2019 16:03:58 +0000",
        "Message-Id": "<20191122160359.11625-8-bruce.richardson@intel.com>",
        "X-Mailer": "git-send-email 2.21.0",
        "In-Reply-To": "<20191122160359.11625-1-bruce.richardson@intel.com>",
        "References": "<20191122160359.11625-1-bruce.richardson@intel.com>",
        "MIME-Version": "1.0",
        "Content-Transfer-Encoding": "8bit",
        "Subject": "[dpdk-dev] [PATCH 7/8] doc: update documentation on build and\n\trunning FreeBSD apps",
        "X-BeenThere": "dev@dpdk.org",
        "X-Mailman-Version": "2.1.15",
        "Precedence": "list",
        "List-Id": "DPDK patches and discussions <dev.dpdk.org>",
        "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n <mailto:dev-request@dpdk.org?subject=unsubscribe>",
        "List-Archive": "<http://mails.dpdk.org/archives/dev/>",
        "List-Post": "<mailto:dev@dpdk.org>",
        "List-Help": "<mailto:dev-request@dpdk.org?subject=help>",
        "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n <mailto:dev-request@dpdk.org?subject=subscribe>",
        "Errors-To": "dev-bounces@dpdk.org",
        "Sender": "\"dev\" <dev-bounces@dpdk.org>"
    },
    "content": "Update the documentation on building and running apps on FreeBSD, taking\naccount of having used meson for building. We can also update the section\non the command-line parameters, rather than claiming to be a complete list\nof parameters, it should describe how to get the complete list and only\ncover a few important ones.\n\nSigned-off-by: Bruce Richardson <bruce.richardson@intel.com>\n---\n doc/guides/freebsd_gsg/build_sample_apps.rst | 118 +++++--------------\n 1 file changed, 27 insertions(+), 91 deletions(-)",
    "diff": "diff --git a/doc/guides/freebsd_gsg/build_sample_apps.rst b/doc/guides/freebsd_gsg/build_sample_apps.rst\nindex 0c1b9cb79..2a68f5fc3 100644\n--- a/doc/guides/freebsd_gsg/build_sample_apps.rst\n+++ b/doc/guides/freebsd_gsg/build_sample_apps.rst\n@@ -12,68 +12,37 @@ environment. It also provides a pointer to where sample applications are stored.\n Compiling a Sample Application\n ------------------------------\n \n-Once a DPDK target environment directory has been created (such as\n-``x86_64-native-freebsd-clang``), it contains all libraries and header files required\n-to build an application.\n+The DPDK example applications make use of the pkg-config file installed on\n+the system when DPDK is installed, and so can be built using GNU make.\n \n-When compiling an application in the FreeBSD environment on the DPDK,\n-the following variables must be exported:\n-\n-*   ``RTE_SDK`` - Points to the DPDK installation directory.\n-\n-*   ``RTE_TARGET`` - Points to the DPDK target environment directory.\n-    For FreeBSD, this is the ``x86_64-native-freebsd-clang`` or\n-    ``x86_64-native-freebsd-gcc`` directory.\n-\n-The following is an example of creating the ``helloworld`` application, which runs\n-in the DPDK FreeBSD environment. While the example demonstrates compiling\n-using gcc version 4.9, compiling with clang will be similar, except that the ``CC=``\n-parameter can probably be omitted. The ``helloworld`` example may be found in the\n-``${RTE_SDK}/examples`` directory.\n-\n-The directory contains the ``main.c`` file. This file, when combined with the\n-libraries in the DPDK target environment, calls the various functions to\n-initialize the DPDK environment, then launches an entry point (dispatch\n-application) for each core to be utilized. By default, the binary is generated\n-in the build directory.\n-\n-.. code-block:: console\n-\n-    setenv RTE_SDK /home/user/DPDK\n-    cd $(RTE_SDK)\n-    cd examples/helloworld/\n-    setenv RTE_SDK $HOME/DPDK\n-    setenv RTE_TARGET x86_64-native-freebsd-gcc\n-\n-    gmake CC=gcc49\n-      CC main.o\n-      LD helloworld\n-      INSTALL-APP helloworld\n-      INSTALL-MAP helloworld.map\n+.. note::\n \n-    ls build/app\n-      helloworld helloworld.map\n+   BSD make cannot be used to compile the DPDK example applications. GNU\n+   make can be installed using `pkg install gmake` if not already installed\n+   on the FreeBSD system.\n \n-.. note::\n+The following shows how to compile the helloworld example app, following\n+the installation of DPDK using `ninja install` as described previously::\n \n-    In the above example, ``helloworld`` was in the directory structure of the\n-    DPDK. However, it could have been located outside the directory\n-    structure to keep the DPDK structure intact.  In the following case,\n-    the ``helloworld`` application is copied to a new directory as a new starting\n-    point.\n+        $ export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig\n \n-.. code-block:: console\n+        $ cd examples/helloworld/\n \n-    setenv RTE_SDK /home/user/DPDK\n-    cp -r $(RTE_SDK)/examples/helloworld my_rte_app\n-    cd my_rte_app/\n-    setenv RTE_TARGET x86_64-native-freebsd-gcc\n+        $ gmake\n+        cc -O3 -I/usr/local/include -include rte_config.h -march=native\n+        -D__BSD_VISIBLE  main.c -o build/helloworld-shared\n+        -L/usr/local/lib -lrte_telemetry -lrte_bpf -lrte_flow_classify\n+        -lrte_pipeline -lrte_table -lrte_port -lrte_fib -lrte_ipsec\n+        -lrte_stack -lrte_security -lrte_sched -lrte_reorder -lrte_rib\n+        -lrte_rcu -lrte_rawdev -lrte_pdump -lrte_member -lrte_lpm\n+        -lrte_latencystats -lrte_jobstats -lrte_ip_frag -lrte_gso -lrte_gro\n+        -lrte_eventdev -lrte_efd -lrte_distributor -lrte_cryptodev\n+        -lrte_compressdev -lrte_cfgfile -lrte_bitratestats -lrte_bbdev\n+        -lrte_acl -lrte_timer -lrte_hash -lrte_metrics -lrte_cmdline\n+        -lrte_pci -lrte_ethdev -lrte_meter -lrte_net -lrte_mbuf\n+        -lrte_mempool -lrte_ring -lrte_eal -lrte_kvargs\n+        ln -sf helloworld-shared build/helloworld\n \n-    gmake CC=gcc49\n-      CC main.o\n-      LD helloworld\n-      INSTALL-APP helloworld\n-      INSTALL-MAP helloworld.map\n \n .. _running_sample_app:\n \n@@ -88,29 +57,15 @@ Running a Sample Application\n     Abstraction Layer (EAL) library, which provides some options that are generic\n     to every DPDK application.\n \n-The following is the list of options that can be given to the EAL:\n-\n-.. code-block:: console\n-\n-    ./rte-app -l CORELIST [-n NUM] [-b <domain:bus:devid.func>] \\\n-              [-r NUM] [-v] [--proc-type <primary|secondary|auto>]\n-\n-.. note::\n-\n-    EAL has a common interface between all operating systems and is based on the\n-    Linux notation for PCI devices. For example, a FreeBSD device selector of\n-    ``pci0:2:0:1`` is referred to as ``02:00.1`` in EAL.\n-\n-The EAL options for FreeBSD are as follows:\n+A large number of options can be given to the EAL when running an\n+application. A full list of options can be got by passing `--help` to a\n+DPDK application. Some of the EAL options for FreeBSD are as follows:\n \n *   ``-c COREMASK`` or ``-l CORELIST``:\n     A hexadecimal bit mask of the cores to run on.  Note that core numbering\n     can change between platforms and should be determined beforehand. The corelist\n     is a list of cores to use instead of a core mask.\n \n-*   ``-n NUM``:\n-    Number of memory channels per processor socket.\n-\n *   ``-b <domain:bus:devid.func>``:\n     Blacklisting of ports; prevent EAL from using specified PCI device\n     (multiple ``-b`` options are allowed).\n@@ -119,15 +74,9 @@ The EAL options for FreeBSD are as follows:\n     Use the specified Ethernet device(s) only.  Use comma-separate\n     ``[domain:]bus:devid.func`` values. Cannot be used with ``-b`` option.\n \n-*   ``-r NUM``:\n-    Number of memory ranks.\n-\n *   ``-v``:\n     Display version information on startup.\n \n-*   ``--proc-type``:\n-    The type of process instance.\n-\n *   ``-m MB``:\n     Memory to allocate from hugepages, regardless of processor socket.\n \n@@ -147,19 +96,6 @@ Other options, specific to Linux and are not supported under FreeBSD are as foll\n \n The ``-c`` or ``-l`` option is mandatory; the others are optional.\n \n-Copy the DPDK application binary to your target, then run the application\n-as follows (assuming the platform has four memory channels, and that cores 0-3\n-are present and are to be used for running the application)::\n-\n-    ./helloworld -l 0-3 -n 4\n-\n-.. note::\n-\n-    The ``--proc-type`` and ``--file-prefix`` EAL options are used for running multiple\n-    DPDK processes.  See the \"Multi-process Sample Application\" chapter\n-    in the *DPDK Sample Applications User Guide and the DPDK\n-    Programmers Guide* for more details.\n-\n .. _running_non_root:\n \n Running DPDK Applications Without Root Privileges\n",
    "prefixes": [
        "7/8"
    ]
}