Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/84018/?format=api
http://patches.dpdk.org/api/patches/84018/?format=api", "web_url": "http://patches.dpdk.org/project/dpdk/patch/1605100718-7991-11-git-send-email-juraj.linkes@pantheon.tech/", "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": "<1605100718-7991-11-git-send-email-juraj.linkes@pantheon.tech>", "list_archive_url": "https://inbox.dpdk.org/dev/1605100718-7991-11-git-send-email-juraj.linkes@pantheon.tech", "date": "2020-11-11T13:18:34", "name": "[v9,10/14] build: add core and NUMA counts to cross files", "commit_ref": null, "pull_url": null, "state": "superseded", "archived": true, "hash": "d8c230a053e591f22724a7bfab11a43ffde998e5", "submitter": { "id": 1626, "url": "http://patches.dpdk.org/api/people/1626/?format=api", "name": "Juraj Linkeš", "email": "juraj.linkes@pantheon.tech" }, "delegate": { "id": 1, "url": "http://patches.dpdk.org/api/users/1/?format=api", "username": "tmonjalo", "first_name": "Thomas", "last_name": "Monjalon", "email": "thomas@monjalon.net" }, "mbox": "http://patches.dpdk.org/project/dpdk/patch/1605100718-7991-11-git-send-email-juraj.linkes@pantheon.tech/mbox/", "series": [ { "id": 13812, "url": "http://patches.dpdk.org/api/series/13812/?format=api", "web_url": "http://patches.dpdk.org/project/dpdk/list/?series=13812", "date": "2020-11-11T13:18:24", "name": "Arm build options rework", "version": 9, "mbox": "http://patches.dpdk.org/series/13812/mbox/" } ], "comments": "http://patches.dpdk.org/api/patches/84018/comments/", "check": "success", "checks": "http://patches.dpdk.org/api/patches/84018/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 0C58FA09D9;\n\tWed, 11 Nov 2020 14:22:24 +0100 (CET)", "from [92.243.14.124] (localhost [127.0.0.1])\n\tby dpdk.org (Postfix) with ESMTP id A1FBB6CC0;\n\tWed, 11 Nov 2020 14:19:13 +0100 (CET)", "from lb.pantheon.sk (lb.pantheon.sk [46.229.239.20])\n by dpdk.org (Postfix) with ESMTP id 407765AB3\n for <dev@dpdk.org>; Wed, 11 Nov 2020 14:19:00 +0100 (CET)", "from localhost (localhost [127.0.0.1])\n by lb.pantheon.sk (Postfix) with ESMTP id 72DF7B92E2;\n Wed, 11 Nov 2020 14:18:57 +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 ZhV_sum96ThB; Wed, 11 Nov 2020 14:18:56 +0100 (CET)", "from service-node1.lab.pantheon.local (unknown [46.229.239.141])\n by lb.pantheon.sk (Postfix) with ESMTP id F0D9AB9982;\n Wed, 11 Nov 2020 14:18:49 +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", "Cc": "dev@dpdk.org, =?utf-8?q?Juraj_Linke=C5=A1?= <juraj.linkes@pantheon.tech>", "Date": "Wed, 11 Nov 2020 14:18:34 +0100", "Message-Id": "<1605100718-7991-11-git-send-email-juraj.linkes@pantheon.tech>", "X-Mailer": "git-send-email 2.7.4", "In-Reply-To": "<1605100718-7991-1-git-send-email-juraj.linkes@pantheon.tech>", "References": "<1604649795-27476-1-git-send-email-juraj.linkes@pantheon.tech>\n <1605100718-7991-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 v9 10/14] build: add core and NUMA counts to\n\tcross files", "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": "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>\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_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 | 6 ++++--\n config/meson.build | 15 +++++++++++++++\n .../linux_gsg/cross_build_dpdk_for_arm64.rst | 9 +++++++++\n 14 files changed, 50 insertions(+), 2 deletions(-)", "diff": "diff --git a/config/arm/arm64_armada_linux_gcc b/config/arm/arm64_armada_linux_gcc\nindex 52c5f4476..73945fbb4 100644\n--- a/config/arm/arm64_armada_linux_gcc\n+++ b/config/arm/arm64_armada_linux_gcc\n@@ -15,3 +15,5 @@ endian = 'little'\n \n [properties]\n implementer_id = '0x56'\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 573ae7e42..00101962b 100644\n--- a/config/arm/arm64_dpaa_linux_gcc\n+++ b/config/arm/arm64_dpaa_linux_gcc\n@@ -15,3 +15,5 @@ endian = 'little'\n \n [properties]\n implementer_id = 'dpaa'\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_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 cdbdcee85..fdc402898 100644\n--- a/config/arm/meson.build\n+++ b/config/arm/meson.build\n@@ -38,7 +38,8 @@ implementer_generic = {\n \t\t['RTE_MACHINE', '\"armv8a\"'],\n \t\t['RTE_USE_C11_MEM_MODEL', true],\n \t\t['RTE_CACHE_LINE_SIZE', 128],\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@@ -76,7 +77,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 }\ndiff --git a/config/meson.build b/config/meson.build\nindex ce0abe49b..208d1ea01 100644\n--- a/config/meson.build\n+++ b/config/meson.build\n@@ -249,6 +249,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 max_lcores = get_option('max_lcores')\n if max_lcores > 0\n \t# Overwrite the default value from arch_subdir with user input\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": [ "v9", "10/14" ] }{ "id": 84018, "url": "