Show a cover letter.

GET /api/covers/84146/?format=api
HTTP 200 OK
Allow: GET, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "id": 84146,
    "url": "https://patches.dpdk.org/api/covers/84146/?format=api",
    "web_url": "https://patches.dpdk.org/project/dpdk/cover/1605277875-13625-1-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": "<1605277875-13625-1-git-send-email-juraj.linkes@pantheon.tech>",
    "list_archive_url": "https://inbox.dpdk.org/dev/1605277875-13625-1-git-send-email-juraj.linkes@pantheon.tech",
    "date": "2020-11-13T14:31:01",
    "name": "[v12,00/14] Arm build options rework",
    "submitter": {
        "id": 1626,
        "url": "https://patches.dpdk.org/api/people/1626/?format=api",
        "name": "Juraj Linkeš",
        "email": "juraj.linkes@pantheon.tech"
    },
    "mbox": "https://patches.dpdk.org/project/dpdk/cover/1605277875-13625-1-git-send-email-juraj.linkes@pantheon.tech/mbox/",
    "series": [
        {
            "id": 13874,
            "url": "https://patches.dpdk.org/api/series/13874/?format=api",
            "web_url": "https://patches.dpdk.org/project/dpdk/list/?series=13874",
            "date": "2020-11-13T14:31:01",
            "name": "Arm build options rework",
            "version": 12,
            "mbox": "https://patches.dpdk.org/series/13874/mbox/"
        }
    ],
    "comments": "https://patches.dpdk.org/api/covers/84146/comments/",
    "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 9CFEAA09E0;\n\tFri, 13 Nov 2020 15:31:24 +0100 (CET)",
            "from [92.243.14.124] (localhost [127.0.0.1])\n\tby dpdk.org (Postfix) with ESMTP id 5DFAB4CA6;\n\tFri, 13 Nov 2020 15:31:23 +0100 (CET)",
            "from lb.pantheon.sk (lb.pantheon.sk [46.229.239.20])\n by dpdk.org (Postfix) with ESMTP id A53234CA6\n for <dev@dpdk.org>; Fri, 13 Nov 2020 15:31:20 +0100 (CET)",
            "from localhost (localhost [127.0.0.1])\n by lb.pantheon.sk (Postfix) with ESMTP id 34513B9309;\n Fri, 13 Nov 2020 15:31:18 +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 jAYbV9LaYf5J; Fri, 13 Nov 2020 15:31:16 +0100 (CET)",
            "from service-node1.lab.pantheon.local (unknown [46.229.239.141])\n by lb.pantheon.sk (Postfix) with ESMTP id 9B30EB7E7E;\n Fri, 13 Nov 2020 15:31:15 +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": "Fri, 13 Nov 2020 15:31:01 +0100",
        "Message-Id": "<1605277875-13625-1-git-send-email-juraj.linkes@pantheon.tech>",
        "X-Mailer": "git-send-email 2.7.4",
        "In-Reply-To": "<1605267483-13167-1-git-send-email-juraj.linkes@pantheon.tech>",
        "References": "<1605267483-13167-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 v12 00/14] Arm build options rework",
        "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": "The current way of specifying Arm configuration options is insufficient\nsince we can't identify the SoC we're building for from the MIDR\ninformation. For example, we can't distinguish between N1SDP, Graviton2\nor Ampere Altra.\n\nAdd a way to specify the cpu count and numa node count for cross builds\nand aarch64 -> aarch64 (SoC) builds.\n\nWe also want to be able to disable which drivers (and possibly\nlibraries) are built without user input. This is useful when building:\n1. on an SoC that is slow and we want to build only what is necessary\n  without the user having to check which libraries they have installed\n2. a cross build on a fast aarch64 machine but with target SoC which\n  differs in capabilities or libraries.\nThis is achieved by specifying the drivers in SoC configuration.\n\nAmong libraries, only libnuma can be now disabled.\n\nAlso add an optional way to discover cpu count a numa node count. Fix\n-Dmax_lcores and -Dmax_numa_nodes for arm builds.\n\nThe current implementation adds/supports the following:\n* x86 -> aarch64 cross build with added config options/disabled\n  drivers/libs\n* aarch64 -> aarch64 builds for a different SoCs using meson -Darm_soc\n  option or using a cross file\n* max numa nodes and max lcore may be specified on the command line to\n  overwrite the values for any (native, SoC or cross) build\n\nv2:\nMajor rework of the whole series.\n\nv3:\nAdded numa and core count defaults for x86 default build.\nRemoved numa and core count defaults. Now requiring defaults to be\nspecified in a cross file or on the cmdline.\nAdded FreeBDS support for numa count discovery.\n\nv4:\nMake automatic numa and cpu counts discovery optional.\n\nv5:\nSplit the refactor patch into smaller patches.\nSimplify buildtools/get_numa_count.py.\nAdd more explanation to cover letter.\n\nv6:\nApply cross file options arch agnostically, not just in Arm cross\nbuilds.\nStreamline Arm build setup and machine args: always use native args in\nnative builds, require implementer ID and part number for cross builds.\n\nv7:\nArm config options are now organized in one dictionary.\nRemoved unsupported implementers and removed fallback to generic\nimplementer/part number for unknown implementer/part number.\nAdded meson config option arm_soc which can be used to specify\nconfiguration to be used, useful for aarch64 -> aarch64 builds.\n\nv8:\nRebase.\n\nv9:\nSplit SoC and implementer dictionaries into smaller parts.\nFixed DPAA and ARMADA SoC configuration.\nAdded documentation about supported SoCs.\n\nv10:\nAdded a commit that fixes Graviton2 clang build failures in native\nbuild.\n\nv11:\nRebase.\n\nv12:\nFixed dpaa and armada cross builds in generic build commit.\n\nSeries Acked-by: Jerin Jacob <jerinj@marvell.com>\nSeries Tested-by: Jerin Jacob <jerinj@marvell.com>\nSeries Tested-by: Dharmik Thakkar <dharmik.thakkar@arm.com>\n\nJuraj Linkeš (14):\n  build: alias default build as generic\n  build: rename Arm build variables\n  build: remove unused or superfluous variables\n  build: reformat and move Arm config and comments\n  build: simplify how Arm flags are processed\n  build: organize Arm config into dict\n  build: isolate configuration for generic build\n  build: use native machine args in Arm native build\n  build: optional NUMA and cpu counts detection\n  build: add core and NUMA counts to cross files\n  build: disable Arm drivers\n  build: disable libnuma in cross builds\n  build: add Arm SoC meson option\n  config: fix Arm implementer and its SoCs\n\n buildtools/get_cpu_count.py                   |   7 +\n buildtools/get_numa_count.py                  |  22 +\n buildtools/meson.build                        |   2 +\n config/arm/arm64_armada_linux_gcc             |   2 +-\n config/arm/arm64_armv8_linux_gcc              |  15 +-\n config/arm/arm64_bluefield_linux_gcc          |   3 +-\n config/arm/arm64_dpaa_linux_gcc               |   2 +-\n config/arm/arm64_emag_linux_gcc               |   2 +-\n config/arm/arm64_graviton2_linux_gcc          |   3 +-\n config/arm/arm64_n1sdp_linux_gcc              |   3 +-\n config/arm/arm64_octeontx2_linux_gcc          |   3 +-\n config/arm/arm64_stingray_linux_gcc           |   3 +-\n config/arm/arm64_thunderx2_linux_gcc          |   3 +-\n ..._linux_gcc => arm64_thunderxt88_linux_gcc} |   2 +-\n config/arm/meson.build                        | 503 ++++++++++++------\n config/meson.build                            |  90 +++-\n config/x86/meson.build                        |   2 +\n .../linux_gsg/cross_build_dpdk_for_arm64.rst  |  30 ++\n doc/guides/prog_guide/build-sdk-meson.rst     |   4 +-\n drivers/meson.build                           |   6 +-\n meson.build                                   |   1 +\n meson_options.txt                             |  12 +-\n 22 files changed, 504 insertions(+), 216 deletions(-)\n create mode 100644 buildtools/get_cpu_count.py\n create mode 100644 buildtools/get_numa_count.py\n rename config/arm/{arm64_thunderx_linux_gcc => arm64_thunderxt88_linux_gcc} (92%)"
}