Show a cover letter.

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

{
    "id": 62152,
    "url": "https://patches.dpdk.org/api/covers/62152/?format=api",
    "web_url": "https://patches.dpdk.org/project/dpdk/cover/20191029141212.4907-1-aostruszka@marvell.com/",
    "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": "<20191029141212.4907-1-aostruszka@marvell.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/20191029141212.4907-1-aostruszka@marvell.com",
    "date": "2019-10-29T14:12:00",
    "name": "[v6,00/12] Add an option to use LTO for DPDK build",
    "submitter": {
        "id": 1429,
        "url": "https://patches.dpdk.org/api/people/1429/?format=api",
        "name": "Andrzej Ostruszka [C]",
        "email": "aostruszka@marvell.com"
    },
    "mbox": "https://patches.dpdk.org/project/dpdk/cover/20191029141212.4907-1-aostruszka@marvell.com/mbox/",
    "series": [
        {
            "id": 7128,
            "url": "https://patches.dpdk.org/api/series/7128/?format=api",
            "web_url": "https://patches.dpdk.org/project/dpdk/list/?series=7128",
            "date": "2019-10-29T14:12:00",
            "name": "Add an option to use LTO for DPDK build",
            "version": 6,
            "mbox": "https://patches.dpdk.org/series/7128/mbox/"
        }
    ],
    "comments": "https://patches.dpdk.org/api/covers/62152/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 7665BA00BE;\n\tTue, 29 Oct 2019 15:12:20 +0100 (CET)",
            "from [92.243.14.124] (localhost [127.0.0.1])\n\tby dpdk.org (Postfix) with ESMTP id 873E65B3A;\n\tTue, 29 Oct 2019 15:12:19 +0100 (CET)",
            "from mx0b-0016f401.pphosted.com (mx0b-0016f401.pphosted.com\n [67.231.156.173]) by dpdk.org (Postfix) with ESMTP id 2E5EE34F0\n for <dev@dpdk.org>; Tue, 29 Oct 2019 15:12:17 +0100 (CET)",
            "from pps.filterd (m0045851.ppops.net [127.0.0.1])\n by mx0b-0016f401.pphosted.com (8.16.0.42/8.16.0.42) with SMTP id\n x9TE04Q6016162; Tue, 29 Oct 2019 07:12:16 -0700",
            "from sc-exch01.marvell.com ([199.233.58.181])\n by mx0b-0016f401.pphosted.com with ESMTP id 2vvnnp1p1f-1\n (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT);\n Tue, 29 Oct 2019 07:12:16 -0700",
            "from SC-EXCH01.marvell.com (10.93.176.81) by SC-EXCH01.marvell.com\n (10.93.176.81) with Microsoft SMTP Server (TLS) id 15.0.1367.3; Tue, 29 Oct\n 2019 07:12:14 -0700",
            "from maili.marvell.com (10.93.176.43) by SC-EXCH01.marvell.com\n (10.93.176.81) with Microsoft SMTP Server id 15.0.1367.3 via Frontend\n Transport; Tue, 29 Oct 2019 07:12:14 -0700",
            "from amok.marvell.com (unknown [10.95.130.126])\n by maili.marvell.com (Postfix) with ESMTP id 48E533F703F;\n Tue, 29 Oct 2019 07:12:13 -0700 (PDT)"
        ],
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.com;\n h=from : to : cc :\n subject : date : message-id : in-reply-to : references : mime-version :\n content-type : content-transfer-encoding; s=pfpt0818;\n bh=dswfwrik36NY9pzfA4mFsTmjUh/TLiVCQ7THQ7CqFCo=;\n b=kryyUixeG/Kp6bIaC6JykcXEhFqD+m1zaH8o/PxGMsT2R8FDMKse65dGbxW9r4dVYJ8c\n giakuPAQU6SBFUMmNXlnqm3dAeplfQ/hcmnXE8wyBjwauxeuR2GrcqMfE84bUCmjcSPO\n KWMAd/oXpEqEAiqSf++gSFpp5RYoriMHjL8zJ5w4TvdRSTguxs56uFvUT4Tx/G6fDUW4\n r3c7LWejfgdRt1trMqcp5/CA4YeCUUrviOdmFRu4g/UWaGVFuxRqQbpVvj6Cus9XaNEs\n vaf4lW9vxhqtmhb5SBsotsFSFZhRlgdXwVFWd2bmbfCX4LoTL+TUoUQ48RP1bc5k0R3B nA==",
        "From": "Andrzej Ostruszka <aostruszka@marvell.com>",
        "To": "<dev@dpdk.org>",
        "CC": "<mattias.ronnblom@ericsson.com>, <stephen@networkplumber.org>",
        "Date": "Tue, 29 Oct 2019 15:12:00 +0100",
        "Message-ID": "<20191029141212.4907-1-aostruszka@marvell.com>",
        "X-Mailer": "git-send-email 2.17.1",
        "In-Reply-To": "<20191028142145.3758-1-aostruszka@marvell.com>",
        "References": "<20191028142145.3758-1-aostruszka@marvell.com>",
        "MIME-Version": "1.0",
        "Content-Type": "text/plain; charset=\"UTF-8\"",
        "Content-Transfer-Encoding": "8bit",
        "X-Proofpoint-Virus-Version": "vendor=fsecure engine=2.50.10434:6.0.95,1.0.8\n definitions=2019-10-29_04:2019-10-28,2019-10-29 signatures=0",
        "Subject": "[dpdk-dev] [PATCH v6 00/12] Add an option to use LTO for DPDK build",
        "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": "This patch series adds an option to make use of link time optimization\n(if compiler has support for it).  It is split as follows:\n- 1st patch is just a minor doc fix for versioning macros\n- 2nd patch fixes missing __vsym annotations (needed for LTO)\n- 3rd is the LTO enablement\n- remaining patches are fixes for the warnings produced by the compiler\n  and they are split by directory/subsystem so their maintainers can\n  easily find and verify the changes - please note that there are two\n  groups:\n  * errors (or possible errors) - with title \"fix possible use ...\"\n  * false positives - warnings that _I_ think are not valid and the\n    changes are made only to silence the compiler.\n\nv6 Changes:\n-----------\n- yet another split of the patch: this time from __vsym one minor doc\n  fix to versioning macros has been moved to another patch\n- net/ifc - fixed initialization of vring in m_ifcvf_start():\n  after rebase definition rte_vhost_vring has changed and now simple\n  '{ 0 }' produces proper warning - however instead of '{ { 0 } }'\n  I went with memset() because I could not get gcc to be quiet about\n  \"missing initializer\" (IMHO \"{{0}}\" is a correct initialization but\n  gcc required me to spell out initializers to all members which looked\n  ugly and would require update on further changes to vring)\n- I've been suggested (offlist) to mark the patches that were previously\n  \"reviewed/acked\" so I've added some \"Reviewed|Acked-by\" tags (if the\n  ack was sent to a patch that was later split the tag is placed in\n  both patches).\n\n\nv5 Changes:\n-----------\n- rebased to the v19.11 (one additional warning silenced in net/qede)\n- initial patch has been split into two:\n  - one adding '__vsym' annotations and clarifying versioning docs\n  - another adding the actual LTO enablement\n- addressed various documentation flaws pointed during review\n\nv4 Changes:\n-----------\n- merge nested conditionals in config/meson.build into one\n\nv3 Changes:\n-----------\n- removed support for clang (only gcc and icc remain):\n  - it turned out that 'fat-lto-objects' is not really supported - it is\n    accepted as a flag but ignored e.g. clang v6.0:\n      clang: error: optimization flag '-ffat-lto-objects' is not supported\n      [-Werror,-Wignored-optimization-argument]\n    this was probably masked previously by playing around with meson and\n    testing for the availability of this flag and dropping LTO if not\n    supported.\n- improved commit messages:\n  - added 'Fixes' tags where appropriate\n  - included snippets of compiler warnings\n- changed commit names for the commits cleaning up 'false positive'\n  compiler warnings - these are not really 'fixes' for the code, just\n  workarounds for compiler shortcomings and check-git-log.sh was\n  complaining about missing 'Fixes' tag.\n\nv2 Changes:\n-----------\n- fixed building of shared libraries:\n  - gcc does not scan top level assembler statements so it missed that\n    function implementations for specific versions were being used and\n    was removing them\n- fixed meson.build config files:\n  - moved from 'enable_lto' project option to built-in 'b_lto'\n  - documented that 'default_library' should be 'shared':\n    with 'default_library=static' (the default) the meson build with LTO\n    is broken - this is because, SHARED_LIB is fixed in rte_config.h\n    used by meson which leads to no alias for default version in\n    generated static libraries (MAP_STATIC_SYMBOL() is empty)\n- app/test: added log for failed bonding \"config get\"\n\nAndrzej Ostruszka (12):\n  doc: fix description of versioning macros\n  build: annotate versioned symbols with __vsym macro\n  build: add an option to enable LTO build\n  eventdev: fix possible use of uninitialized var\n  app/eventdev: clean LTO build warnings (maybe-uninitialized)\n  event/octeontx2: clean LTO build warnings (maybe-uninitialized)\n  app/test: clean LTO build warnings (maybe-uninitialized)\n  net/dpaa2: fix possible use of uninitialized vars\n  net/e1000: clean LTO build warnings (maybe-uninitialized)\n  net/i40e: clean LTO build warnings (maybe-uninitialized)\n  net/ifc: clean LTO build warnings (maybe-uninitialized)\n  net/qede: clean LTO build warnings (maybe-uninitialized)\n\n .travis.yml                                   |  7 ++++\n app/test-eventdev/test_perf_common.c          |  2 +-\n app/test-eventdev/test_pipeline_common.c      |  4 +-\n app/test/test_hash_readwrite.c                |  2 +-\n app/test/test_link_bonding_mode4.c            |  8 +++-\n app/test/test_memzone.c                       |  3 +-\n config/common_base                            |  5 +++\n config/meson.build                            | 13 ++++++\n doc/guides/contributing/versioning.rst        | 18 ++++++---\n doc/guides/prog_guide/index.rst               |  1 +\n doc/guides/prog_guide/lto.rst                 | 40 +++++++++++++++++++\n doc/guides/rel_notes/release_19_11.rst        |  9 +++++\n drivers/event/octeontx2/otx2_tim_worker.h     |  2 +-\n drivers/net/dpaa2/base/dpaa2_hw_dpni.c        |  1 +\n drivers/net/dpaa2/mc/dpkg.c                   |  2 +-\n drivers/net/dpaa2/mc/dpni.c                   |  9 +++--\n drivers/net/e1000/base/e1000_82543.c          |  2 +-\n drivers/net/e1000/base/e1000_ich8lan.c        |  2 +-\n drivers/net/e1000/base/e1000_phy.c            |  2 +-\n drivers/net/i40e/i40e_ethdev.c                |  2 +-\n drivers/net/ifc/ifcvf_vdpa.c                  | 14 +++++--\n drivers/net/qede/base/ecore_mcp.c             | 15 +++----\n lib/librte_distributor/rte_distributor.c      | 18 ++++-----\n lib/librte_distributor/rte_distributor_v20.c  | 18 ++++-----\n .../common/include/rte_function_versioning.h  | 11 ++++-\n lib/librte_eventdev/rte_event_timer_adapter.c |  8 ++--\n lib/librte_lpm/rte_lpm.c                      | 28 ++++++-------\n lib/librte_lpm/rte_lpm6.c                     | 16 ++++----\n lib/librte_timer/rte_timer.c                  | 20 +++++-----\n mk/toolchain/gcc/rte.toolchain-compat.mk      |  4 ++\n mk/toolchain/gcc/rte.vars.mk                  | 12 ++++++\n mk/toolchain/icc/rte.vars.mk                  |  8 ++++\n 32 files changed, 218 insertions(+), 88 deletions(-)\n create mode 100644 doc/guides/prog_guide/lto.rst"
}