get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 86696,
    "url": "https://patches.dpdk.org/api/patches/86696/?format=api",
    "web_url": "https://patches.dpdk.org/project/dpdk/patch/1610717170-31279-9-git-send-email-juraj.linkes@pantheon.tech/",
    "project": {
        "id": 1,
        "url": "https://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": "<1610717170-31279-9-git-send-email-juraj.linkes@pantheon.tech>",
    "list_archive_url": "https://inbox.dpdk.org/dev/1610717170-31279-9-git-send-email-juraj.linkes@pantheon.tech",
    "date": "2021-01-15T13:26:06",
    "name": "[v15,08/12] build: add core and NUMA counts to cross files",
    "commit_ref": null,
    "pull_url": null,
    "state": "accepted",
    "archived": true,
    "hash": "1e57b4d28d9001e5ad09ae9b6f68f5f829a2deb4",
    "submitter": {
        "id": 1626,
        "url": "https://patches.dpdk.org/api/people/1626/?format=api",
        "name": "Juraj Linkeš",
        "email": "juraj.linkes@pantheon.tech"
    },
    "delegate": {
        "id": 1,
        "url": "https://patches.dpdk.org/api/users/1/?format=api",
        "username": "tmonjalo",
        "first_name": "Thomas",
        "last_name": "Monjalon",
        "email": "thomas@monjalon.net"
    },
    "mbox": "https://patches.dpdk.org/project/dpdk/patch/1610717170-31279-9-git-send-email-juraj.linkes@pantheon.tech/mbox/",
    "series": [
        {
            "id": 14781,
            "url": "https://patches.dpdk.org/api/series/14781/?format=api",
            "web_url": "https://patches.dpdk.org/project/dpdk/list/?series=14781",
            "date": "2021-01-15T13:25:58",
            "name": "Arm build options rework",
            "version": 15,
            "mbox": "https://patches.dpdk.org/series/14781/mbox/"
        }
    ],
    "comments": "https://patches.dpdk.org/api/patches/86696/comments/",
    "check": "success",
    "checks": "https://patches.dpdk.org/api/patches/86696/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 mails.dpdk.org (mails.dpdk.org [217.70.189.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id 0F017A0A02;\n\tFri, 15 Jan 2021 14:27:44 +0100 (CET)",
            "from [217.70.189.124] (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id 5ACCE1410A2;\n\tFri, 15 Jan 2021 14:26:30 +0100 (CET)",
            "from lb.pantheon.sk (lb.pantheon.sk [46.229.239.20])\n by mails.dpdk.org (Postfix) with ESMTP id 3592614108F\n for <dev@dpdk.org>; Fri, 15 Jan 2021 14:26:27 +0100 (CET)",
            "from localhost (localhost [127.0.0.1])\n by lb.pantheon.sk (Postfix) with ESMTP id 0328FBFD8E;\n Fri, 15 Jan 2021 14:26:24 +0100 (CET)",
            "from lb.pantheon.sk ([127.0.0.1])\n by localhost (lb.pantheon.sk [127.0.0.1]) (amavisd-new, port 10024)\n with ESMTP id T4do4XXsssfD; Fri, 15 Jan 2021 14:26:23 +0100 (CET)",
            "from service-node1.lab.pantheon.local (unknown [46.229.239.141])\n by lb.pantheon.sk (Postfix) with ESMTP id 2A45CBFD8D;\n Fri, 15 Jan 2021 14:26:20 +0100 (CET)"
        ],
        "X-Virus-Scanned": "amavisd-new at siecit.sk",
        "From": "=?utf-8?q?Juraj_Linke=C5=A1?= <juraj.linkes@pantheon.tech>",
        "To": "bruce.richardson@intel.com, Ruifeng.Wang@arm.com,\n Honnappa.Nagarahalli@arm.com, Phil.Yang@arm.com, vcchunga@amazon.com,\n Dharmik.Thakkar@arm.com, jerinjacobk@gmail.com, hemant.agrawal@nxp.com,\n ajit.khaparde@broadcom.com, ferruh.yigit@intel.com, aboyer@pensando.io",
        "Cc": "dev@dpdk.org, =?utf-8?q?Juraj_Linke=C5=A1?= <juraj.linkes@pantheon.tech>",
        "Date": "Fri, 15 Jan 2021 14:26:06 +0100",
        "Message-Id": "<1610717170-31279-9-git-send-email-juraj.linkes@pantheon.tech>",
        "X-Mailer": "git-send-email 2.7.4",
        "In-Reply-To": "<1610717170-31279-1-git-send-email-juraj.linkes@pantheon.tech>",
        "References": "<1608724059-8562-1-git-send-email-juraj.linkes@pantheon.tech>\n <1610717170-31279-1-git-send-email-juraj.linkes@pantheon.tech>",
        "MIME-Version": "1.0",
        "Content-Type": "text/plain; charset=UTF-8",
        "Content-Transfer-Encoding": "8bit",
        "Subject": "[dpdk-dev] [PATCH v15 08/12] build: add core and NUMA counts to\n cross files",
        "X-BeenThere": "dev@dpdk.org",
        "X-Mailman-Version": "2.1.29",
        "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": "Add support for setting core count and numa nodes in cross files. The\nvalues specified in cross files will override the default values.\nAlso add missing default values to Arm config.\n\nSigned-off-by: Juraj Linkeš <juraj.linkes@pantheon.tech>\nReviewed-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>\n---\n config/arm/arm64_armada_linux_gcc                 |  2 ++\n config/arm/arm64_armv8_linux_gcc                  |  2 ++\n config/arm/arm64_bluefield_linux_gcc              |  2 ++\n config/arm/arm64_dpaa_linux_gcc                   |  2 ++\n config/arm/arm64_emag_linux_gcc                   |  2 ++\n config/arm/arm64_graviton2_linux_gcc              |  2 ++\n config/arm/arm64_n1sdp_linux_gcc                  |  2 ++\n config/arm/arm64_n2_linux_gcc                     |  2 ++\n config/arm/arm64_octeontx2_linux_gcc              |  2 ++\n config/arm/arm64_stingray_linux_gcc               |  2 ++\n config/arm/arm64_thunderx2_linux_gcc              |  2 ++\n config/arm/arm64_thunderxt88_linux_gcc            |  2 ++\n config/arm/meson.build                            | 12 ++++++------\n config/meson.build                                | 15 +++++++++++++++\n .../linux_gsg/cross_build_dpdk_for_arm64.rst      |  9 +++++++++\n 15 files changed, 54 insertions(+), 6 deletions(-)",
    "diff": "diff --git a/config/arm/arm64_armada_linux_gcc b/config/arm/arm64_armada_linux_gcc\nindex 143a3c9f8..2ecc4604c 100644\n--- a/config/arm/arm64_armada_linux_gcc\n+++ b/config/arm/arm64_armada_linux_gcc\n@@ -16,3 +16,5 @@ endian = 'little'\n [properties]\n implementer_id = '0x56'\n part_number = '0xd08'\n+max_lcores = 16\n+max_numa_nodes = 1\ndiff --git a/config/arm/arm64_armv8_linux_gcc b/config/arm/arm64_armv8_linux_gcc\nindex 0099f5ca2..5451a01da 100644\n--- a/config/arm/arm64_armv8_linux_gcc\n+++ b/config/arm/arm64_armv8_linux_gcc\n@@ -16,3 +16,5 @@ endian = 'little'\n # Generate binaries that are portable across all Armv8 machines\n implementer_id = 'generic'\n part_number = 'generic'\n+max_lcores = 256\n+max_numa_nodes = 4\ndiff --git a/config/arm/arm64_bluefield_linux_gcc b/config/arm/arm64_bluefield_linux_gcc\nindex b79389d85..4f56790c5 100644\n--- a/config/arm/arm64_bluefield_linux_gcc\n+++ b/config/arm/arm64_bluefield_linux_gcc\n@@ -15,3 +15,5 @@ endian = 'little'\n [properties]\n implementer_id = '0x41'\n part_number = '0xd08'\n+max_lcores = 16\n+max_numa_nodes = 1\ndiff --git a/config/arm/arm64_dpaa_linux_gcc b/config/arm/arm64_dpaa_linux_gcc\nindex c3c8a1ef6..8641fee63 100644\n--- a/config/arm/arm64_dpaa_linux_gcc\n+++ b/config/arm/arm64_dpaa_linux_gcc\n@@ -16,3 +16,5 @@ endian = 'little'\n [properties]\n implementer_id = 'dpaa'\n part_number = '0xd08'\n+max_lcores = 16\n+max_numa_nodes = 1\ndiff --git a/config/arm/arm64_emag_linux_gcc b/config/arm/arm64_emag_linux_gcc\nindex c675954fc..7cbb05510 100644\n--- a/config/arm/arm64_emag_linux_gcc\n+++ b/config/arm/arm64_emag_linux_gcc\n@@ -15,3 +15,5 @@ endian = 'little'\n [properties]\n implementer_id = '0x50'\n part_number = '0x0'\n+max_lcores = 32\n+max_numa_nodes = 1\ndiff --git a/config/arm/arm64_graviton2_linux_gcc b/config/arm/arm64_graviton2_linux_gcc\nindex 022e06303..d0bfec87d 100644\n--- a/config/arm/arm64_graviton2_linux_gcc\n+++ b/config/arm/arm64_graviton2_linux_gcc\n@@ -15,3 +15,5 @@ endian = 'little'\n [properties]\n implementor_id = '0x41'\n implementor_pn = '0xd0c'\n+max_lcores = 64\n+max_numa_nodes = 1\ndiff --git a/config/arm/arm64_n1sdp_linux_gcc b/config/arm/arm64_n1sdp_linux_gcc\nindex 6fb3f02ea..138ae08c3 100644\n--- a/config/arm/arm64_n1sdp_linux_gcc\n+++ b/config/arm/arm64_n1sdp_linux_gcc\n@@ -15,3 +15,5 @@ endian = 'little'\n [properties]\n implementer_id = '0x41'\n part_number = '0xd0c'\n+max_lcores = 4\n+max_numa_nodes = 1\ndiff --git a/config/arm/arm64_n2_linux_gcc b/config/arm/arm64_n2_linux_gcc\nindex 3de5a6eb1..d249ccf91 100644\n--- a/config/arm/arm64_n2_linux_gcc\n+++ b/config/arm/arm64_n2_linux_gcc\n@@ -15,3 +15,5 @@ endian = 'little'\n [properties]\n implementer_id = '0x41'\n part_number = '0xd49'\n+max_lcores = 64\n+max_numa_nodes = 1\ndiff --git a/config/arm/arm64_octeontx2_linux_gcc b/config/arm/arm64_octeontx2_linux_gcc\nindex ac1042806..26cf471ad 100644\n--- a/config/arm/arm64_octeontx2_linux_gcc\n+++ b/config/arm/arm64_octeontx2_linux_gcc\n@@ -15,3 +15,5 @@ endian = 'little'\n [properties]\n implementer_id = '0x43'\n part_number = '0xb2'\n+max_lcores = 36\n+max_numa_nodes = 1\ndiff --git a/config/arm/arm64_stingray_linux_gcc b/config/arm/arm64_stingray_linux_gcc\nindex b79389d85..4f56790c5 100644\n--- a/config/arm/arm64_stingray_linux_gcc\n+++ b/config/arm/arm64_stingray_linux_gcc\n@@ -15,3 +15,5 @@ endian = 'little'\n [properties]\n implementer_id = '0x41'\n part_number = '0xd08'\n+max_lcores = 16\n+max_numa_nodes = 1\ndiff --git a/config/arm/arm64_thunderx2_linux_gcc b/config/arm/arm64_thunderx2_linux_gcc\nindex dd257745e..c06dcdc2b 100644\n--- a/config/arm/arm64_thunderx2_linux_gcc\n+++ b/config/arm/arm64_thunderx2_linux_gcc\n@@ -15,3 +15,5 @@ endian = 'little'\n [properties]\n implementer_id = '0x43'\n part_number = '0xaf'\n+max_lcores = 256\n+max_numa_nodes = 2\ndiff --git a/config/arm/arm64_thunderxt88_linux_gcc b/config/arm/arm64_thunderxt88_linux_gcc\nindex 758966262..3ba1528e4 100644\n--- a/config/arm/arm64_thunderxt88_linux_gcc\n+++ b/config/arm/arm64_thunderxt88_linux_gcc\n@@ -15,3 +15,5 @@ endian = 'little'\n [properties]\n implementer_id = '0x43'\n part_number = '0xa1'\n+max_lcores = 96\n+max_numa_nodes = 1\ndiff --git a/config/arm/meson.build b/config/arm/meson.build\nindex 9c33490e8..d397471eb 100644\n--- a/config/arm/meson.build\n+++ b/config/arm/meson.build\n@@ -36,7 +36,8 @@ implementer_generic = {\n \t'flags': [\n \t\t['RTE_MACHINE', '\"armv8a\"'],\n \t\t['RTE_USE_C11_MEM_MODEL', true],\n-\t\t['RTE_MAX_LCORE', 256]\n+\t\t['RTE_MAX_LCORE', 256],\n+\t\t['RTE_MAX_NUMA_NODES', 4]\n \t],\n \t'part_number_config': {\n \t\t'generic': {'machine_args': ['-march=armv8-a+crc',\n@@ -61,8 +62,7 @@ part_number_config_arm = {\n \t\t\t['RTE_EAL_NUMA_AWARE_HUGEPAGES', false],\n \t\t\t['RTE_LIBRTE_VHOST_NUMA', false],\n \t\t\t['RTE_MAX_MEM_MB', 1048576],\n-\t\t\t['RTE_MAX_LCORE', 80],\n-\t\t\t['RTE_MAX_NUMA_NODES', 1]\n+\t\t\t['RTE_MAX_LCORE', 80]\n \t\t]\n \t},\n \t'0xd49': {\n@@ -82,7 +82,8 @@ implementer_arm = {\n \t\t['RTE_MACHINE', '\"armv8a\"'],\n \t\t['RTE_USE_C11_MEM_MODEL', true],\n \t\t['RTE_CACHE_LINE_SIZE', 64],\n-\t\t['RTE_MAX_LCORE', 16]\n+\t\t['RTE_MAX_LCORE', 16],\n+\t\t['RTE_MAX_NUMA_NODES', 1]\n \t],\n \t'part_number_config': part_number_config_arm\n }\n@@ -119,8 +120,7 @@ implementer_cavium = {\n \t\t\t\t['RTE_ARM_FEATURE_ATOMICS', true],\n \t\t\t\t['RTE_USE_C11_MEM_MODEL', true],\n \t\t\t\t['RTE_CACHE_LINE_SIZE', 64],\n-\t\t\t\t['RTE_MAX_LCORE', 256],\n-\t\t\t\t['RTE_MAX_NUMA_NODES', 2]\n+\t\t\t\t['RTE_MAX_LCORE', 256]\n \t\t\t]\n \t\t},\n \t\t'0xb2': {\ndiff --git a/config/meson.build b/config/meson.build\nindex a3154e29c..19c743091 100644\n--- a/config/meson.build\n+++ b/config/meson.build\n@@ -253,6 +253,21 @@ compile_time_cpuflags = []\n subdir(arch_subdir)\n dpdk_conf.set('RTE_COMPILE_TIME_CPUFLAGS', ','.join(compile_time_cpuflags))\n \n+# apply cross-specific options\n+if meson.is_cross_build()\n+\t# configure RTE_MAX_LCORE and RTE_MAX_NUMA_NODES from cross file\n+\tcross_max_lcores = meson.get_cross_property('max_lcores', 0)\n+\tif cross_max_lcores != 0\n+\t\tmessage('Setting RTE_MAX_LCORE from cross file')\n+\t\tdpdk_conf.set('RTE_MAX_LCORE', cross_max_lcores)\n+\tendif\n+\tcross_max_numa_nodes = meson.get_cross_property('max_numa_nodes', 0)\n+\tif cross_max_numa_nodes != 0\n+\t\tmessage('Setting RTE_MAX_NUMA_NODES from cross file')\n+\t\tdpdk_conf.set('RTE_MAX_NUMA_NODES', cross_max_numa_nodes)\n+\tendif\n+endif\n+\n # set the install path for the drivers\n dpdk_conf.set_quoted('RTE_EAL_PMD_PATH', eal_pmd_path)\n \ndiff --git a/doc/guides/linux_gsg/cross_build_dpdk_for_arm64.rst b/doc/guides/linux_gsg/cross_build_dpdk_for_arm64.rst\nindex 6a883b030..4e65b271c 100644\n--- a/doc/guides/linux_gsg/cross_build_dpdk_for_arm64.rst\n+++ b/doc/guides/linux_gsg/cross_build_dpdk_for_arm64.rst\n@@ -134,3 +134,12 @@ you may use various combinations of implementer/part number::\n \n    Supported part_numbers for 0x50:\n       '0x0':     emag\n+\n+Other cross file options\n+------------------------\n+\n+There are other options you may specify in a cross file to tailor the build::\n+\n+   Supported extra configuration\n+      max_numa_nodes = n  # will set RTE_MAX_NUMA_NODES\n+      max_lcores = n      # will set RTE_MAX_LCORE\n",
    "prefixes": [
        "v15",
        "08/12"
    ]
}