Show a cover letter.

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

{
    "id": 61298,
    "url": "http://patchwork.dpdk.org/api/covers/61298/?format=api",
    "web_url": "http://patchwork.dpdk.org/project/dpdk/cover/cover.1571229052.git.anatoly.burakov@intel.com/",
    "project": {
        "id": 1,
        "url": "http://patchwork.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": "<cover.1571229052.git.anatoly.burakov@intel.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/cover.1571229052.git.anatoly.burakov@intel.com",
    "date": "2019-10-16T12:43:15",
    "name": "[v2,00/10] Implement the new ABI policy and add helper scripts",
    "submitter": {
        "id": 4,
        "url": "http://patchwork.dpdk.org/api/people/4/?format=api",
        "name": "Anatoly Burakov",
        "email": "anatoly.burakov@intel.com"
    },
    "mbox": "http://patchwork.dpdk.org/project/dpdk/cover/cover.1571229052.git.anatoly.burakov@intel.com/mbox/",
    "series": [
        {
            "id": 6881,
            "url": "http://patchwork.dpdk.org/api/series/6881/?format=api",
            "web_url": "http://patchwork.dpdk.org/project/dpdk/list/?series=6881",
            "date": "2019-10-16T12:43:15",
            "name": "Implement the new ABI policy and add helper scripts",
            "version": 2,
            "mbox": "http://patchwork.dpdk.org/series/6881/mbox/"
        }
    ],
    "comments": "http://patchwork.dpdk.org/api/covers/61298/comments/",
    "headers": {
        "Return-Path": "<dev-bounces@dpdk.org>",
        "X-Original-To": "patchwork@dpdk.org",
        "Delivered-To": "patchwork@dpdk.org",
        "Received": [
            "from [92.243.14.124] (localhost [127.0.0.1])\n\tby dpdk.org (Postfix) with ESMTP id 717B21E92D;\n\tWed, 16 Oct 2019 14:43:30 +0200 (CEST)",
            "from mga11.intel.com (mga11.intel.com [192.55.52.93])\n\tby dpdk.org (Postfix) with ESMTP id 3F2D81E8D0\n\tfor <dev@dpdk.org>; Wed, 16 Oct 2019 14:43:28 +0200 (CEST)",
            "from orsmga005.jf.intel.com ([10.7.209.41])\n\tby fmsmga102.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384;\n\t16 Oct 2019 05:43:27 -0700",
            "from silpixa00399498.ir.intel.com (HELO\n\tsilpixa00399498.ger.corp.intel.com) ([10.237.223.151])\n\tby orsmga005.jf.intel.com with ESMTP; 16 Oct 2019 05:43:25 -0700"
        ],
        "X-Amp-Result": "SKIPPED(no attachment in message)",
        "X-Amp-File-Uploaded": "False",
        "X-ExtLoop1": "1",
        "X-IronPort-AV": "E=Sophos;i=\"5.67,303,1566889200\"; d=\"scan'208\";a=\"370788251\"",
        "From": "Anatoly Burakov <anatoly.burakov@intel.com>",
        "To": "dev@dpdk.org",
        "Cc": "john.mcnamara@intel.com, bruce.richardson@intel.com, thomas@monjalon.net,\n\tdavid.marchand@redhat.com",
        "Date": "Wed, 16 Oct 2019 13:43:15 +0100",
        "Message-Id": "<cover.1571229052.git.anatoly.burakov@intel.com>",
        "X-Mailer": "git-send-email 2.17.1",
        "In-Reply-To": "<20190930092139.2440-1-marcinx.baran@intel.com>",
        "References": "<20190930092139.2440-1-marcinx.baran@intel.com>",
        "Subject": "[dpdk-dev] [PATCH v2 00/10] Implement the new ABI policy and add\n\thelper scripts",
        "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\t<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\t<mailto:dev-request@dpdk.org?subject=subscribe>",
        "Errors-To": "dev-bounces@dpdk.org",
        "Sender": "\"dev\" <dev-bounces@dpdk.org>"
    },
    "content": "This patchset prepares the codebase for the new ABI policy and\nadds a few helper scripts.\n\nThere are two new scripts for managing ABI versions added. The\nfirst one is a Python script that will read in a .map file,\nflatten it and update the ABI version to the ABI version\nspecified on the command-line.\n\nThe second one is a shell script that will run the above mentioned\nPython script recursively over the source tree and set the ABI\nversion to either that which is defined in config/ABI_VERSION, or\na user-specified one.\n\nExample of its usage: buildtools/update-abi.sh 20.0\n\nThis will recurse into lib/ and drivers/ directory and update\nwhatever .map files it can find.\n\nThe other shell script that's added is one that can take in a .so\nfile and ensure that its declared public ABI matches either\ncurrent ABI, next ABI, or EXPERIMENTAL. This was moved to the\nlast commit because it made no sense to have it beforehand.\n\nThe source tree was verified to follow the new ABI policy using\nthe following command (assuming built binaries are in build/):\n\nfind ./build/lib ./build/drivers -name  \\*.so \\\n\t-exec ./buildtools/check-abi-version.sh {} \\; -print\n\nThis returns 0.\n\nChanges since v1:\n- Reordered patchset to have removal of old ABI's before introducing\n  the new one to avoid compile breakages between patches\n- Added a new patch fixing missing symbol in octeontx common\n- Split script commits into multiple commits and reordered them\n- Re-generated the ABI bump commit\n- Verified all scripts to work\n\nAnatoly Burakov (2):\n  buildtools: add ABI update shell script\n  drivers/octeontx: add missing public symbol\n\nMarcin Baran (6):\n  config: change ABI versioning for global\n  timer: remove deprecated code\n  lpm: remove deprecated code\n  distributor: remove deprecated code\n  lib: change function suffix in distributor\n  buildtools: add ABI versioning check script\n\nPawel Modrak (2):\n  buildtools: add script for updating symbols abi version\n  build: change ABI version to 20.0\n\n buildtools/check-abi-version.sh               |  54 +\n buildtools/meson.build                        |   2 +\n buildtools/update-abi.sh                      |  36 +\n buildtools/update_version_map_abi.py          | 148 +++\n config/ABI_VERSION                            |   1 +\n config/meson.build                            |   3 +-\n .../rte_pmd_bbdev_fpga_lte_fec_version.map    |   8 +-\n .../null/rte_pmd_bbdev_null_version.map       |   2 +-\n .../rte_pmd_bbdev_turbo_sw_version.map        |   2 +-\n drivers/bus/dpaa/rte_bus_dpaa_version.map     | 115 +-\n drivers/bus/fslmc/rte_bus_fslmc_version.map   | 154 ++-\n drivers/bus/ifpga/rte_bus_ifpga_version.map   |  14 +-\n drivers/bus/pci/rte_bus_pci_version.map       |   2 +-\n drivers/bus/vdev/rte_bus_vdev_version.map     |  12 +-\n drivers/bus/vmbus/rte_bus_vmbus_version.map   |  12 +-\n drivers/common/cpt/rte_common_cpt_version.map |   4 +-\n .../common/dpaax/rte_common_dpaax_version.map |   4 +-\n .../common/mvep/rte_common_mvep_version.map   |   6 +-\n .../octeontx/rte_common_octeontx_version.map  |   7 +-\n .../rte_common_octeontx2_version.map          |  16 +-\n .../compress/isal/rte_pmd_isal_version.map    |   2 +-\n .../rte_pmd_octeontx_compress_version.map     |   2 +-\n drivers/compress/qat/rte_pmd_qat_version.map  |   2 +-\n .../compress/zlib/rte_pmd_zlib_version.map    |   2 +-\n .../aesni_gcm/rte_pmd_aesni_gcm_version.map   |   2 +-\n .../aesni_mb/rte_pmd_aesni_mb_version.map     |   2 +-\n .../crypto/armv8/rte_pmd_armv8_version.map    |   2 +-\n .../caam_jr/rte_pmd_caam_jr_version.map       |   3 +-\n drivers/crypto/ccp/rte_pmd_ccp_version.map    |   3 +-\n .../dpaa2_sec/rte_pmd_dpaa2_sec_version.map   |  10 +-\n .../dpaa_sec/rte_pmd_dpaa_sec_version.map     |  10 +-\n .../crypto/kasumi/rte_pmd_kasumi_version.map  |   2 +-\n .../crypto/mvsam/rte_pmd_mvsam_version.map    |   2 +-\n .../crypto/nitrox/rte_pmd_nitrox_version.map  |   2 +-\n .../null/rte_pmd_null_crypto_version.map      |   2 +-\n .../rte_pmd_octeontx_crypto_version.map       |   3 +-\n .../openssl/rte_pmd_openssl_version.map       |   2 +-\n .../rte_pmd_crypto_scheduler_version.map      |  19 +-\n .../crypto/snow3g/rte_pmd_snow3g_version.map  |   2 +-\n .../virtio/rte_pmd_virtio_crypto_version.map  |   2 +-\n drivers/crypto/zuc/rte_pmd_zuc_version.map    |   2 +-\n .../event/dpaa/rte_pmd_dpaa_event_version.map |   3 +-\n .../dpaa2/rte_pmd_dpaa2_event_version.map     |   2 +-\n .../event/dsw/rte_pmd_dsw_event_version.map   |   2 +-\n .../rte_pmd_octeontx_event_version.map        |   2 +-\n .../rte_pmd_octeontx2_event_version.map       |   3 +-\n .../event/opdl/rte_pmd_opdl_event_version.map |   2 +-\n .../rte_pmd_skeleton_event_version.map        |   3 +-\n drivers/event/sw/rte_pmd_sw_event_version.map |   2 +-\n .../bucket/rte_mempool_bucket_version.map     |   3 +-\n .../mempool/dpaa/rte_mempool_dpaa_version.map |   2 +-\n .../dpaa2/rte_mempool_dpaa2_version.map       |  12 +-\n .../octeontx/rte_mempool_octeontx_version.map |   2 +-\n .../rte_mempool_octeontx2_version.map         |   4 +-\n .../mempool/ring/rte_mempool_ring_version.map |   3 +-\n .../stack/rte_mempool_stack_version.map       |   3 +-\n drivers/meson.build                           |  20 +-\n .../af_packet/rte_pmd_af_packet_version.map   |   3 +-\n drivers/net/af_xdp/rte_pmd_af_xdp_version.map |   2 +-\n drivers/net/ark/rte_pmd_ark_version.map       |   5 +-\n .../net/atlantic/rte_pmd_atlantic_version.map |   4 +-\n drivers/net/avp/rte_pmd_avp_version.map       |   2 +-\n drivers/net/axgbe/rte_pmd_axgbe_version.map   |   2 +-\n drivers/net/bnx2x/rte_pmd_bnx2x_version.map   |   3 +-\n drivers/net/bnxt/rte_pmd_bnxt_version.map     |   4 +-\n drivers/net/bonding/rte_pmd_bond_version.map  |  47 +-\n drivers/net/cxgbe/rte_pmd_cxgbe_version.map   |   3 +-\n drivers/net/dpaa/rte_pmd_dpaa_version.map     |  11 +-\n drivers/net/dpaa2/rte_pmd_dpaa2_version.map   |  12 +-\n drivers/net/e1000/rte_pmd_e1000_version.map   |   3 +-\n drivers/net/ena/rte_pmd_ena_version.map       |   3 +-\n drivers/net/enetc/rte_pmd_enetc_version.map   |   3 +-\n drivers/net/enic/rte_pmd_enic_version.map     |   3 +-\n .../net/failsafe/rte_pmd_failsafe_version.map |   3 +-\n drivers/net/fm10k/rte_pmd_fm10k_version.map   |   3 +-\n drivers/net/hinic/rte_pmd_hinic_version.map   |   3 +-\n drivers/net/hns3/rte_pmd_hns3_version.map     |   4 +-\n drivers/net/i40e/rte_pmd_i40e_version.map     |  65 +-\n drivers/net/iavf/rte_pmd_iavf_version.map     |   3 +-\n drivers/net/ice/rte_pmd_ice_version.map       |   3 +-\n drivers/net/ifc/rte_pmd_ifc_version.map       |   3 +-\n drivers/net/ipn3ke/rte_pmd_ipn3ke_version.map |   3 +-\n drivers/net/ixgbe/rte_pmd_ixgbe_version.map   |  62 +-\n drivers/net/kni/rte_pmd_kni_version.map       |   3 +-\n .../net/liquidio/rte_pmd_liquidio_version.map |   3 +-\n drivers/net/memif/rte_pmd_memif_version.map   |   5 +-\n drivers/net/mlx4/rte_pmd_mlx4_version.map     |   3 +-\n drivers/net/mlx5/rte_pmd_mlx5_version.map     |   2 +-\n drivers/net/mvneta/rte_pmd_mvneta_version.map |   2 +-\n drivers/net/mvpp2/rte_pmd_mvpp2_version.map   |   2 +-\n drivers/net/netvsc/rte_pmd_netvsc_version.map |   4 +-\n drivers/net/nfb/rte_pmd_nfb_version.map       |   3 +-\n drivers/net/nfp/rte_pmd_nfp_version.map       |   2 +-\n drivers/net/null/rte_pmd_null_version.map     |   3 +-\n .../net/octeontx/rte_pmd_octeontx_version.map |  10 +-\n .../octeontx2/rte_pmd_octeontx2_version.map   |   3 +-\n drivers/net/pcap/rte_pmd_pcap_version.map     |   3 +-\n drivers/net/qede/rte_pmd_qede_version.map     |   3 +-\n drivers/net/ring/rte_pmd_ring_version.map     |  10 +-\n drivers/net/sfc/rte_pmd_sfc_version.map       |   3 +-\n .../net/softnic/rte_pmd_softnic_version.map   |   2 +-\n .../net/szedata2/rte_pmd_szedata2_version.map |   2 +-\n drivers/net/tap/rte_pmd_tap_version.map       |   3 +-\n .../net/thunderx/rte_pmd_thunderx_version.map |   3 +-\n .../rte_pmd_vdev_netvsc_version.map           |   3 +-\n drivers/net/vhost/rte_pmd_vhost_version.map   |  11 +-\n drivers/net/virtio/rte_pmd_virtio_version.map |   3 +-\n .../net/vmxnet3/rte_pmd_vmxnet3_version.map   |   3 +-\n .../rte_rawdev_dpaa2_cmdif_version.map        |   3 +-\n .../rte_rawdev_dpaa2_qdma_version.map         |   4 +-\n .../raw/ifpga/rte_rawdev_ifpga_version.map    |   3 +-\n drivers/raw/ioat/rte_rawdev_ioat_version.map  |   3 +-\n drivers/raw/ntb/rte_rawdev_ntb_version.map    |   5 +-\n .../rte_rawdev_octeontx2_dma_version.map      |   3 +-\n .../skeleton/rte_rawdev_skeleton_version.map  |   3 +-\n lib/librte_acl/rte_acl_version.map            |   2 +-\n lib/librte_bbdev/rte_bbdev_version.map        |   4 +\n .../rte_bitratestats_version.map              |   2 +-\n lib/librte_bpf/rte_bpf_version.map            |   4 +\n lib/librte_cfgfile/rte_cfgfile_version.map    |  34 +-\n lib/librte_cmdline/rte_cmdline_version.map    |  10 +-\n .../rte_compressdev_version.map               |   4 +\n .../rte_cryptodev_version.map                 | 102 +-\n lib/librte_distributor/Makefile               |   2 +-\n lib/librte_distributor/meson.build            |   2 +-\n lib/librte_distributor/rte_distributor.c      |  80 +-\n .../rte_distributor_private.h                 |  10 +-\n ...ributor_v20.c => rte_distributor_single.c} |  48 +-\n ...ributor_v20.h => rte_distributor_single.h} |  26 +-\n .../rte_distributor_v1705.h                   |  61 --\n .../rte_distributor_version.map               |  16 +-\n lib/librte_eal/rte_eal_version.map            | 310 ++----\n lib/librte_efd/rte_efd_version.map            |   2 +-\n lib/librte_ethdev/rte_ethdev_version.map      | 160 +--\n lib/librte_eventdev/rte_eventdev_version.map  | 130 +--\n .../rte_flow_classify_version.map             |   4 +\n lib/librte_gro/rte_gro_version.map            |   2 +-\n lib/librte_gso/rte_gso_version.map            |   2 +-\n lib/librte_hash/rte_hash_version.map          |  43 +-\n lib/librte_ip_frag/rte_ip_frag_version.map    |  10 +-\n lib/librte_ipsec/rte_ipsec_version.map        |   4 +\n lib/librte_jobstats/rte_jobstats_version.map  |  10 +-\n lib/librte_kni/rte_kni_version.map            |   2 +-\n lib/librte_kvargs/rte_kvargs_version.map      |   4 +-\n .../rte_latencystats_version.map              |   2 +-\n lib/librte_lpm/rte_lpm.c                      | 996 +-----------------\n lib/librte_lpm/rte_lpm.h                      |  88 --\n lib/librte_lpm/rte_lpm6.c                     | 132 +--\n lib/librte_lpm/rte_lpm6.h                     |  25 -\n lib/librte_lpm/rte_lpm_version.map            |  39 +-\n lib/librte_mbuf/rte_mbuf_version.map          |  41 +-\n lib/librte_member/rte_member_version.map      |   2 +-\n lib/librte_mempool/rte_mempool_version.map    |  44 +-\n lib/librte_meter/rte_meter_version.map        |  13 +-\n lib/librte_metrics/rte_metrics_version.map    |   2 +-\n lib/librte_net/rte_net_version.map            |  23 +-\n lib/librte_pci/rte_pci_version.map            |   2 +-\n lib/librte_pdump/rte_pdump_version.map        |   2 +-\n lib/librte_pipeline/rte_pipeline_version.map  |  36 +-\n lib/librte_port/rte_port_version.map          |  64 +-\n lib/librte_power/rte_power_version.map        |  24 +-\n lib/librte_rawdev/rte_rawdev_version.map      |   4 +-\n lib/librte_rcu/rte_rcu_version.map            |   4 +\n lib/librte_reorder/rte_reorder_version.map    |   8 +-\n lib/librte_ring/rte_ring_version.map          |  10 +-\n lib/librte_sched/rte_sched_version.map        |  14 +-\n lib/librte_security/rte_security_version.map  |   2 +-\n lib/librte_stack/rte_stack_version.map        |   4 +\n lib/librte_table/rte_table_version.map        |   2 +-\n .../rte_telemetry_version.map                 |   4 +\n lib/librte_timer/rte_timer.c                  |  90 +-\n lib/librte_timer/rte_timer.h                  |  15 -\n lib/librte_timer/rte_timer_version.map        |  12 +-\n lib/librte_vhost/rte_vhost_version.map        |  52 +-\n lib/meson.build                               |  18 +-\n meson_options.txt                             |   2 -\n mk/rte.lib.mk                                 |  19 +-\n 177 files changed, 1122 insertions(+), 2891 deletions(-)\n create mode 100755 buildtools/check-abi-version.sh\n create mode 100755 buildtools/update-abi.sh\n create mode 100755 buildtools/update_version_map_abi.py\n create mode 100644 config/ABI_VERSION\n rename lib/librte_distributor/{rte_distributor_v20.c => rte_distributor_single.c} (87%)\n rename lib/librte_distributor/{rte_distributor_v20.h => rte_distributor_single.h} (89%)\n delete mode 100644 lib/librte_distributor/rte_distributor_v1705.h"
}