List comments

GET /api/covers/53575/comments/?format=api&order=-submitter
HTTP 200 OK
Allow: GET, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

[
    {
        "id": 96494,
        "web_url": "http://patches.dpdk.org/comment/96494/",
        "msgid": "<CAJFAV8xao1y4kxgw=vZGNQfnwXOFjrXQdkoPyoMH-E9AgHvYUQ@mail.gmail.com>",
        "list_archive_url": "https://inbox.dpdk.org/dev/CAJFAV8xao1y4kxgw=vZGNQfnwXOFjrXQdkoPyoMH-E9AgHvYUQ@mail.gmail.com",
        "date": "2019-05-29T07:59:11",
        "subject": "Re: [dpdk-dev] [PATCH 00/15] prefix network structures",
        "submitter": {
            "id": 1173,
            "url": "http://patches.dpdk.org/api/people/1173/?format=api",
            "name": "David Marchand",
            "email": "david.marchand@redhat.com"
        },
        "content": "On Fri, May 24, 2019 at 1:38 PM Ferruh Yigit <ferruh.yigit@intel.com> wrote:\n\n> On 5/21/2019 5:13 PM, Olivier Matz wrote:\n> > The rte_net headers conflict with the libc headers, because\n> > some definitions are duplicated, sometimes with few differences.\n> >\n> > This patchset adds the rte_ (or RTE_) prefix to all structures, functions\n> > and defines in rte_net library. This is a big changeset, that will\n> > break the API of many functions, but not the ABI.\n> >\n> > This was discussed in [1], and requested by the techboard [2].\n> >\n> > patch-v1:\n> > * rease on top of v19.05\n> > * remove uneeded renames in drivers/net/bonding/rte_eth_bond_pmd.c\n> >   and app/test-pmd/icmpecho.c (arp-related variables)\n> > * do not modify base drivers, except cxgbe, thunderx, enetc, qede:\n> >   only files that already contain dpdk definitions are modified.\n> > * fix checkpatch issues when it does not impact the code style too\n> >   much. Big warnings remain about the RTE_IPv4() macros because\n> >   arguments are separated by ',' instead of ', '.\n> > * add a release note patch\n> > * tested compilation on x86_64-linux and x86_64-freebsd.\n> >\n> > rfc-v2:\n> > * rebase on top of v19.05-rc1\n> >\n> >\n> > [1] http://mails.dpdk.org/archives/dev/2018-January/087384.html\n> > [2] http://mails.dpdk.org/archives/dev/2019-February/125033.html\n> >\n> >\n> > Olivier Matz (15):\n> >   net: add rte prefix to arp structures\n> >   net: add rte prefix to arp defines\n> >   net: add rte prefix to ether structures\n> >   net: add rte prefix to ether functions\n> >   net: add rte prefix to ether defines\n> >   net: add rte prefix to esp structure\n> >   net: add rte prefix to gre structure\n> >   net: add rte prefix to icmp structure\n> >   net: add rte prefix to icmp defines\n> >   net: add rte prefix to ip structure\n> >   net: add rte prefix to ip defines\n> >   net: add rte prefix to sctp structure\n> >   net: add rte prefix to tcp structure\n> >   net: add rte prefix to udp structure\n> >   doc: announce network api change\n>\n> Reviewed-by: Stephen Hemminger <stephen@networkplumber.org>\n> Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com>\n>\n> For series,\n> Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>\n>\n> Series applied to dpdk-next-net/master, thanks.\n>\n\nSorry, late to the party...\n\nSince we change those defines, we might as well avoid these warnings:\nCHECK:CAMELCASE: Avoid CamelCase: <RTE_ETHER_TYPE_IPv4>\nCHECK:CAMELCASE: Avoid CamelCase: <RTE_ETHER_TYPE_IPv6>\n\nI can send a patch.",
        "headers": {
            "Subject": "Re: [dpdk-dev] [PATCH 00/15] prefix network structures",
            "List-Post": "<mailto:dev@dpdk.org>",
            "X-Original-To": "patchwork@dpdk.org",
            "Message-ID": "<CAJFAV8xao1y4kxgw=vZGNQfnwXOFjrXQdkoPyoMH-E9AgHvYUQ@mail.gmail.com>",
            "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n\t<mailto:dev-request@dpdk.org?subject=subscribe>",
            "From": "David Marchand <david.marchand@redhat.com>",
            "Return-Path": "<dev-bounces@dpdk.org>",
            "X-BeenThere": "dev@dpdk.org",
            "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20161025;\n\th=x-gm-message-state:mime-version:references:in-reply-to:from:date\n\t:message-id:subject:to:cc;\n\tbh=nWfqGWFQPCWbbAbyMgtEzXUaDO/F+eOefZ4zLHQrlBI=;\n\tb=BkVb0bfhPQjoB/8drYrcKEmOtIOg7BjOhG7c9N/6CupBV8sk85otZTQWhmQGq63SVq\n\trJJrNmHgSVo48CzKVIGP3JldChB+XUgCKIrsgDfSMmyVAnu6K0xkOtHgoGXNwjNVcN0t\n\tL1whzXUPUxqfYiPH1XVxLP7KjHDibcsCFoDU3ihjxJIUqrJkYWTeMpQzD3cBy05d1B8p\n\tQwRVI2BzjeUedkegAUobejjUd/+kZSrDlwJ/RwghXaKSoiHawC1FVFXXugpQeRAZUcur\n\tkODheKMfoujdZllrLPlXNr6jhRonC4FrKwZUlDp8cKs8FDZZVF8BwcYCN1sONCPZPM3I\n\tUYaQ==",
            "X-Gm-Message-State": "APjAAAXIkAQhtYY3jIXzNk6geD1A88U9bZGsGKN7c8hIynlDXA7fOqin\n\tLlYF5tQBPWNGJAjM9oUF7m8ZtJeIDpvogyo3v6FO0g==",
            "X-Content-Filtered-By": "Mailman/MimeDel 2.1.15",
            "Date": "Wed, 29 May 2019 09:59:11 +0200",
            "In-Reply-To": "<e74ea68d-cf0b-2ea8-b1c2-b71d79aedb7e@intel.com>",
            "X-Mailman-Version": "2.1.15",
            "Errors-To": "dev-bounces@dpdk.org",
            "References": "<20190410083218.17531-1-olivier.matz@6wind.com>\n\t<20190521161315.25500-1-olivier.matz@6wind.com>\n\t<e74ea68d-cf0b-2ea8-b1c2-b71d79aedb7e@intel.com>",
            "Delivered-To": "patchwork@dpdk.org",
            "Precedence": "list",
            "Received": [
                "from [92.243.14.124] (localhost [127.0.0.1])\n\tby dpdk.org (Postfix) with ESMTP id 1B0E8A49;\n\tWed, 29 May 2019 09:59:25 +0200 (CEST)",
                "from mail-ua1-f67.google.com (mail-ua1-f67.google.com\n\t[209.85.222.67]) by dpdk.org (Postfix) with ESMTP id 4F38B1D7\n\tfor <dev@dpdk.org>; Wed, 29 May 2019 09:59:23 +0200 (CEST)",
                "by mail-ua1-f67.google.com with SMTP id 94so527380uam.3\n\tfor <dev@dpdk.org>; Wed, 29 May 2019 00:59:23 -0700 (PDT)"
            ],
            "MIME-Version": "1.0",
            "List-Help": "<mailto:dev-request@dpdk.org?subject=help>",
            "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>",
            "Sender": "\"dev\" <dev-bounces@dpdk.org>",
            "Content-Type": "text/plain; charset=\"UTF-8\"",
            "List-Archive": "<http://mails.dpdk.org/archives/dev/>",
            "X-Received": "by 2002:ab0:14a:: with SMTP id 68mr45485574uak.126.1559116762551;\n\tWed, 29 May 2019 00:59:22 -0700 (PDT)",
            "Cc": "Olivier Matz <olivier.matz@6wind.com>, dev <dev@dpdk.org>, \n\tStephen Hemminger <stephen@networkplumber.org>,\n\tMaxime Coquelin <maxime.coquelin@redhat.com>, \n\tThomas Monjalon <thomas@monjalon.net>",
            "To": "Ferruh Yigit <ferruh.yigit@intel.com>",
            "X-Google-Smtp-Source": "APXvYqxtY/jBC/2h2wX40+X0wwjlI5Bacr7QGytc8prMsvmqJcVcjgXfjeEzmhEQwTEgjc6ORKSxIIiNx1CApfqhDCg="
        }
    },
    {
        "id": 96524,
        "web_url": "http://patches.dpdk.org/comment/96524/",
        "msgid": "<CAJFAV8xZqf9XmXMuO0+m4-Ka4ocmLrmXtFVKhv424eQ_ena8+g@mail.gmail.com>",
        "list_archive_url": "https://inbox.dpdk.org/dev/CAJFAV8xZqf9XmXMuO0+m4-Ka4ocmLrmXtFVKhv424eQ_ena8+g@mail.gmail.com",
        "date": "2019-05-29T17:29:50",
        "subject": "Re: [dpdk-dev] [PATCH 00/15] prefix network structures",
        "submitter": {
            "id": 1173,
            "url": "http://patches.dpdk.org/api/people/1173/?format=api",
            "name": "David Marchand",
            "email": "david.marchand@redhat.com"
        },
        "content": "On Wed, May 29, 2019 at 6:50 PM Olivier Matz <olivier.matz@6wind.com> wrote:\n\n> On Wed, May 29, 2019 at 09:59:11AM +0200, David Marchand wrote:\n> > On Fri, May 24, 2019 at 1:38 PM Ferruh Yigit <ferruh.yigit@intel.com>\n> wrote:\n> >\n> > > On 5/21/2019 5:13 PM, Olivier Matz wrote:\n> > > > The rte_net headers conflict with the libc headers, because\n> > > > some definitions are duplicated, sometimes with few differences.\n> > > >\n> > > > This patchset adds the rte_ (or RTE_) prefix to all structures,\n> functions\n> > > > and defines in rte_net library. This is a big changeset, that will\n> > > > break the API of many functions, but not the ABI.\n> > > >\n> > > > This was discussed in [1], and requested by the techboard [2].\n> > > >\n> > > > patch-v1:\n> > > > * rease on top of v19.05\n> > > > * remove uneeded renames in drivers/net/bonding/rte_eth_bond_pmd.c\n> > > >   and app/test-pmd/icmpecho.c (arp-related variables)\n> > > > * do not modify base drivers, except cxgbe, thunderx, enetc, qede:\n> > > >   only files that already contain dpdk definitions are modified.\n> > > > * fix checkpatch issues when it does not impact the code style too\n> > > >   much. Big warnings remain about the RTE_IPv4() macros because\n> > > >   arguments are separated by ',' instead of ', '.\n> > > > * add a release note patch\n> > > > * tested compilation on x86_64-linux and x86_64-freebsd.\n> > > >\n> > > > rfc-v2:\n> > > > * rebase on top of v19.05-rc1\n> > > >\n> > > >\n> > > > [1] http://mails.dpdk.org/archives/dev/2018-January/087384.html\n> > > > [2] http://mails.dpdk.org/archives/dev/2019-February/125033.html\n> > > >\n> > > >\n> > > > Olivier Matz (15):\n> > > >   net: add rte prefix to arp structures\n> > > >   net: add rte prefix to arp defines\n> > > >   net: add rte prefix to ether structures\n> > > >   net: add rte prefix to ether functions\n> > > >   net: add rte prefix to ether defines\n> > > >   net: add rte prefix to esp structure\n> > > >   net: add rte prefix to gre structure\n> > > >   net: add rte prefix to icmp structure\n> > > >   net: add rte prefix to icmp defines\n> > > >   net: add rte prefix to ip structure\n> > > >   net: add rte prefix to ip defines\n> > > >   net: add rte prefix to sctp structure\n> > > >   net: add rte prefix to tcp structure\n> > > >   net: add rte prefix to udp structure\n> > > >   doc: announce network api change\n> > >\n> > > Reviewed-by: Stephen Hemminger <stephen@networkplumber.org>\n> > > Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com>\n> > >\n> > > For series,\n> > > Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>\n> > >\n> > > Series applied to dpdk-next-net/master, thanks.\n> > >\n> >\n> > Sorry, late to the party...\n> >\n> > Since we change those defines, we might as well avoid these warnings:\n> > CHECK:CAMELCASE: Avoid CamelCase: <RTE_ETHER_TYPE_IPv4>\n> > CHECK:CAMELCASE: Avoid CamelCase: <RTE_ETHER_TYPE_IPv6>\n> >\n> > I can send a patch.\n>\n> Thanks.\n>\n> By the way, here is below a script that can be used to ease the\n> porting of an application. It includes modifications proposed by\n> David [1].\n>\n> It is probably not 100% reliable, but it will do most of the job.\n>\n>\n> Olivier\n>\n> [1] https://mails.dpdk.org/archives/dev/2019-May/133060.html\n>\n> -----------------------\n> #!/bin/bash\n>\n> # Prefix network structure/defines/functions with \"rte_\".\n>\n> set -e\n>\n> if [ $# = 0 ]; then\n>         echo 'usage: $0 <files>'\n>         exit 1\n> fi\n>\n> files=\"$@\"\n>\n> # $1: pattern\n> # $2: replacement\n> replace()\n> {\n>         local pattern=\"$1\"\n>         local replace=\"$2\"\n>\n>         sed -i -e \"s,${pattern},${replace},g\" ${files}\n> }\n>\n> # $*: function names\n> replace_function()\n> {\n>         for i in $*; do\n>                 replace \"\\<$i\\>(\" \"rte_$i(\"\n>         done\n> }\n>\n> # $*: define names\n> replace_define()\n> {\n>         for i in $*; do\n>                 local pattern\n>                 case \"$i\" in\n>                         *'(')\n>                                 pattern=\"\\<${i%(}\\>(\"\n>                                 ;;\n>                         *)\n>                                 pattern=\"\\<${i}\\>\"\n>                                 ;;\n>                 esac\n>                 replace \"$pattern\" \"RTE_${i^^}\"\n>         done\n> }\n>\n> # $*: struct names\n> replace_struct()\n> {\n>         for i in $*; do\n>                 replace \"struct\\([      ][      ]*\\)\\<$i\\>\"\n> \"struct\\1rte_$i\"\n>         done\n> }\n>\n> replace arp_hrd arp_hardware\n> replace arp_pro arp_protocol\n> replace arp_hln arp_hlen\n> replace arp_pln arp_plen\n> replace arp_op arp_opcode\n> replace_struct arp_hdr arp_ipv4\n> replace_define ARP_HRD_ETHER ARP_OP_REQUEST ARP_OP_REPLY ARP_OP_REVREQUEST\n> \\\n>                ARP_OP_REVREPLY ARP_OP_INVREQUEST ARP_OP_INVREPLY\n> replace_struct ether_addr ether_hdr vlan_hdr vxlan_hdr vxlan_gpe_hdr\n> replace_function is_same_ether_addr is_zero_ether_addr\n> is_unicast_ether_addr \\\n>                  is_multicast_ether_addr is_broadcast_ether_addr \\\n>                  is_universal_ether_addr is_local_admin_ether_addr \\\n>                  is_valid_assigned_ether_addr eth_random_addr\n> ether_addr_copy \\\n>                  ether_format_addr\n> replace_define ETHER_ADDR_LEN ETHER_TYPE_LEN ETHER_CRC_LEN ETHER_HDR_LEN \\\n>                ETHER_MIN_LEN ETHER_MAX_LEN ETHER_MTU\n> ETHER_MAX_VLAN_FRAME_LEN \\\n>                ETHER_MAX_VLAN_ID ETHER_MAX_JUMBO_FRAME_LEN ETHER_MIN_MTU \\\n>                ETHER_LOCAL_ADMIN_ADDR ETHER_GROUP_ADDR ETHER_TYPE_IPv4 \\\n>                ETHER_TYPE_IPv6 ETHER_TYPE_ARP ETHER_TYPE_VLAN\n> ETHER_TYPE_RARP \\\n>                ETHER_TYPE_QINQ ETHER_TYPE_ETAG ETHER_TYPE_1588\n> ETHER_TYPE_SLOW \\\n>                ETHER_TYPE_TEB ETHER_TYPE_LLDP ETHER_TYPE_MPLS\n> ETHER_TYPE_MPLSM \\\n>                ETHER_VXLAN_HLEN ETHER_ADDR_FMT_SIZE VXLAN_GPE_TYPE_IPV4 \\\n>                VXLAN_GPE_TYPE_IPV6 VXLAN_GPE_TYPE_ETH VXLAN_GPE_TYPE_NSH \\\n>                VXLAN_GPE_TYPE_MPLS VXLAN_GPE_TYPE_GBP VXLAN_GPE_TYPE_VBNG \\\n>                ETHER_VXLAN_GPE_HLEN\n> replace_struct esp_hdr\n> replace_struct gre_hdr\n> replace_struct icmp_hdr\n> replace_define IP_ICMP_ECHO_REPLY IP_ICMP_ECHO_REQUEST\n> replace_struct ipv4_hdr ipv6_hdr\n> replace_define \"IPv4(\" IPV4_MAX_PKT_LEN IPV4_HDR_IHL_MASK\n> IPV4_IHL_MULTIPLIER \\\n>                IPV4_HDR_DF_SHIFT IPV4_HDR_MF_SHIFT IPV4_HDR_FO_SHIFT \\\n>                IPV4_HDR_DF_FLAG IPV4_HDR_MF_FLAG IPV4_HDR_OFFSET_MASK \\\n>                IPV4_HDR_OFFSET_UNITS IPV4_ANY IPV4_LOOPBACK IPV4_BROADCAST\n> \\\n>                IPV4_ALLHOSTS_GROUP IPV4_ALLRTRS_GROUP IPV4_MAX_LOCAL_GROUP\n> \\\n>                IPV4_MIN_MCAST IPV4_MAX_MCAST IS_IPV4_MCAST\n> IPV6_HDR_FL_SHIFT \\\n>                IPV6_HDR_TC_SHIFT IPV6_HDR_FL_MASK IPV6_HDR_TC_MASK\n> replace_struct sctp_hdr\n> replace_struct tcp_hdr\n> replace_struct udp_hdr\n>\n\nThanks Olivier.\n\nI tested this script against OVS dpdk-latest branch and did not catch any\nfalse positive, so I will submit the changes to OVS ml once my latest\nchanges are in.",
        "headers": {
            "Subject": "Re: [dpdk-dev] [PATCH 00/15] prefix network structures",
            "List-Post": "<mailto:dev@dpdk.org>",
            "X-Original-To": "patchwork@dpdk.org",
            "Message-ID": "<CAJFAV8xZqf9XmXMuO0+m4-Ka4ocmLrmXtFVKhv424eQ_ena8+g@mail.gmail.com>",
            "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n\t<mailto:dev-request@dpdk.org?subject=subscribe>",
            "From": "David Marchand <david.marchand@redhat.com>",
            "Return-Path": "<dev-bounces@dpdk.org>",
            "X-BeenThere": "dev@dpdk.org",
            "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20161025;\n\th=x-gm-message-state:mime-version:references:in-reply-to:from:date\n\t:message-id:subject:to:cc;\n\tbh=Yrw2Mz0lQEn871hKE1jJ7pBhLh6TlSZmBk8sedRe4t8=;\n\tb=HoGM5c1r8gZWIf9RyHxsWDFNe1P+E7BmfFe0/vadqRXW5x5okIJwiZKdj3LSEL2fG/\n\trgygpWWS49KxZu1afl6JKleU9lvvMOkzccsCcHBKorqFAfl4Iwx8tapwOO0TwAZaDna+\n\tPv4c+DCsqjurBpTlFmyc2RZmE34fQtiysvU1CQCm3q4TYF+9ZpiJUmZyl2lZZCUOZ9b2\n\tVdCDWPplEpKqTGG9EQQO+Q7DhRiJzxBQ+loXEuDZmXAMlx0CUFuFzh/081M4OFPacwE/\n\tTOcuYbi5ik4mRKpPJeTGKmvZ+ajg8nNu4gvX3J0ut2fFguPW5Qes3BVW1xD5tw5YAQf8\n\tlIJQ==",
            "X-Gm-Message-State": "APjAAAWQRV0BF1i5WoabLs/G5ujOt8X2+9iLVdQHnavvirvyeL6OuhCZ\n\tXm+pkXoIK1m63PCVxxvX6Q2NeV5GIoZJFppLvw7gWcrp",
            "X-Content-Filtered-By": "Mailman/MimeDel 2.1.15",
            "Date": "Wed, 29 May 2019 19:29:50 +0200",
            "In-Reply-To": "<20190529144602.5tpfb5p3yasz3tvl@platinum>",
            "X-Mailman-Version": "2.1.15",
            "Errors-To": "dev-bounces@dpdk.org",
            "References": "<20190410083218.17531-1-olivier.matz@6wind.com>\n\t<20190521161315.25500-1-olivier.matz@6wind.com>\n\t<e74ea68d-cf0b-2ea8-b1c2-b71d79aedb7e@intel.com>\n\t<CAJFAV8xao1y4kxgw=vZGNQfnwXOFjrXQdkoPyoMH-E9AgHvYUQ@mail.gmail.com>\n\t<20190529144602.5tpfb5p3yasz3tvl@platinum>",
            "Delivered-To": "patchwork@dpdk.org",
            "Precedence": "list",
            "Received": [
                "from [92.243.14.124] (localhost [127.0.0.1])\n\tby dpdk.org (Postfix) with ESMTP id 757BA1B19;\n\tWed, 29 May 2019 19:30:03 +0200 (CEST)",
                "from mail-vs1-f68.google.com (mail-vs1-f68.google.com\n\t[209.85.217.68]) by dpdk.org (Postfix) with ESMTP id CA3631B19\n\tfor <dev@dpdk.org>; Wed, 29 May 2019 19:30:01 +0200 (CEST)",
                "by mail-vs1-f68.google.com with SMTP id y6so2477797vsb.0\n\tfor <dev@dpdk.org>; Wed, 29 May 2019 10:30:01 -0700 (PDT)"
            ],
            "MIME-Version": "1.0",
            "List-Help": "<mailto:dev-request@dpdk.org?subject=help>",
            "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>",
            "Sender": "\"dev\" <dev-bounces@dpdk.org>",
            "Content-Type": "text/plain; charset=\"UTF-8\"",
            "List-Archive": "<http://mails.dpdk.org/archives/dev/>",
            "X-Received": "by 2002:a67:ef45:: with SMTP id\n\tk5mr57084421vsr.105.1559151001182; \n\tWed, 29 May 2019 10:30:01 -0700 (PDT)",
            "Cc": "Ferruh Yigit <ferruh.yigit@intel.com>, dev <dev@dpdk.org>, \n\tStephen Hemminger <stephen@networkplumber.org>,\n\tMaxime Coquelin <maxime.coquelin@redhat.com>, \n\tThomas Monjalon <thomas@monjalon.net>,\n\tIan Stokes <ian.stokes@intel.com>, \n\tIlya Maximets <i.maximets@samsung.com>",
            "To": "Olivier Matz <olivier.matz@6wind.com>",
            "X-Google-Smtp-Source": "APXvYqzCs9gDLEytu3tNeRCBw2LjndfdPsu1aXr1MHLh80Gbv1VfjNJ4ILUbduaNuZ4ZGFSI5SQGGi8GI6Nw7ryAjGE="
        }
    },
    {
        "id": 96534,
        "web_url": "http://patches.dpdk.org/comment/96534/",
        "msgid": "<2352545.TdxH2QEu3F@xps>",
        "list_archive_url": "https://inbox.dpdk.org/dev/2352545.TdxH2QEu3F@xps",
        "date": "2019-05-29T21:15:54",
        "subject": "Re: [dpdk-dev] [PATCH 00/15] prefix network structures",
        "submitter": {
            "id": 685,
            "url": "http://patches.dpdk.org/api/people/685/?format=api",
            "name": "Thomas Monjalon",
            "email": "thomas@monjalon.net"
        },
        "content": "29/05/2019 19:29, David Marchand:\n> On Wed, May 29, 2019 at 6:50 PM Olivier Matz <olivier.matz@6wind.com> wrote:\n> > By the way, here is below a script that can be used to ease the\n> > porting of an application. It includes modifications proposed by\n> > David [1].\n> >\n> > It is probably not 100% reliable, but it will do most of the job.\n> \n> Thanks Olivier.\n> \n> I tested this script against OVS dpdk-latest branch and did not catch any\n> false positive, so I will submit the changes to OVS ml once my latest\n> changes are in.\n\nShould we get this script in DPDK?",
        "headers": {
            "Subject": "Re: [dpdk-dev] [PATCH 00/15] prefix network structures",
            "List-Post": "<mailto:dev@dpdk.org>",
            "X-Original-To": "patchwork@dpdk.org",
            "Cc": "Ferruh Yigit <ferruh.yigit@intel.com>, dev <dev@dpdk.org>,\n\tStephen Hemminger <stephen@networkplumber.org>,\n\tMaxime Coquelin <maxime.coquelin@redhat.com>,\n\tIan Stokes <ian.stokes@intel.com>, Ilya Maximets <i.maximets@samsung.com>",
            "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n\t<mailto:dev-request@dpdk.org?subject=subscribe>",
            "From": "Thomas Monjalon <thomas@monjalon.net>",
            "Return-Path": "<dev-bounces@dpdk.org>",
            "X-BeenThere": "dev@dpdk.org",
            "X-ME-Proxy-Cause": "gggruggvucftvghtrhhoucdtuddrgeduuddruddvjedgudeiudcutefuodetggdotefrod\n\tftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh\n\tnecuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmd\n\tenucfjughrpefhvffufffkjghfggfgtgesthfuredttddtvdenucfhrhhomhepvfhhohhm\n\trghsucfoohhnjhgrlhhonhcuoehthhhomhgrshesmhhonhhjrghlohhnrdhnvghtqeenuc\n\tfkphepleefrdeirddugeelrdduudegnecurfgrrhgrmhepmhgrihhlfhhrohhmpehthhho\n\tmhgrshesmhhonhhjrghlohhnrdhnvghtnecuvehluhhsthgvrhfuihiivgeptd",
            "List-Archive": "<http://mails.dpdk.org/archives/dev/>",
            "DKIM-Signature": [
                "v=1; a=rsa-sha256; c=relaxed/relaxed; d=monjalon.net; h=\n\tfrom:to:cc:subject:date:message-id:in-reply-to:references\n\t:mime-version:content-transfer-encoding:content-type; s=mesmtp;\n\tbh=CjAs7qsmxsj+kMsjiYG8sQgAn8fqp1BHOMW1obdYfs8=; b=P/zUq8ZE6LbC\n\tjLKo3pPIKiNZalQxjK/eF7AyJnW5OqWCpxx7PSWVm+P6Hu/r5QxORAkw04YNcZU5\n\tb1Ba8gSstIi+1GsM0E93C8MZPI9OyE25+kPINPzzIU8F+wa2JNO2q1X4F2MAZsKM\n\tC8RRHIxb65niKeQ2GC9lOGcuJR6mZ2g=",
                "v=1; a=rsa-sha256; c=relaxed/relaxed; d=\n\tmessagingengine.com; h=cc:content-transfer-encoding:content-type\n\t:date:from:in-reply-to:message-id:mime-version:references\n\t:subject:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender\n\t:x-sasl-enc; s=fm2; bh=CjAs7qsmxsj+kMsjiYG8sQgAn8fqp1BHOMW1obdYf\n\ts8=; b=cmm4DOm7twex6/35K6CN45pe5BMJH7oht2S6l7+HzDM42TjacFxtO5dAd\n\tY7SJbL01H2P27SBJaurEcw96zFIj0rPS595nTtLQYHQqIPlVQQFmj6UFOpfcFREU\n\ttNoToYNt+NZHsJzDAFTTgyGvGSEjsipQdOacLUOqvgAOj0MrbUhoXb13KgR/8l9s\n\t05iaB2E2m9iXLoUBYeYQijI6FcM6gJbN9O6xxSnHiTeGEhvV6uC6kxDCpy/N4zC/\n\tIRp9OcrfauqokqsRwAvx6F+SY5kUGr3P4ZZdi14MyfNuZpzMzu+2omy8zcAsT98c\n\tAIzzm7g+VGn+y8j9UzUQ5OU9D2QjQ=="
            ],
            "X-ME-Sender": "<xms:jvbuXFf02bwxY2HjXXAROGJqFHORp7BLEKJWOrbbNDgYtRjmcY2ZMQ>",
            "X-ME-Proxy": "<xmx:jvbuXPeNnQAAjivFB1upd9VD-5M1qAKWm57OmckZWfJPGs7cZJdASA>\n\t<xmx:jvbuXEwa7a8JoQCVWjQBoWBTHClzjf8Qv9ZTOlW5x5TSqvI2JTWIDw>\n\t<xmx:jvbuXMkbWHEm2Q9DsAkrJgxkOTlOLx39o3teZZS_FlCym3o0Uw-Qmg>\n\t<xmx:kPbuXPbXp8g4iRFmQ5FPUgWlF2lPIRwNS7ZngOh0uo45gXE3eOsE5A>",
            "Date": "Wed, 29 May 2019 23:15:54 +0200",
            "In-Reply-To": "<CAJFAV8xZqf9XmXMuO0+m4-Ka4ocmLrmXtFVKhv424eQ_ena8+g@mail.gmail.com>",
            "Message-ID": "<2352545.TdxH2QEu3F@xps>",
            "Errors-To": "dev-bounces@dpdk.org",
            "References": "<20190410083218.17531-1-olivier.matz@6wind.com>\n\t<20190529144602.5tpfb5p3yasz3tvl@platinum>\n\t<CAJFAV8xZqf9XmXMuO0+m4-Ka4ocmLrmXtFVKhv424eQ_ena8+g@mail.gmail.com>",
            "Delivered-To": "patchwork@dpdk.org",
            "Precedence": "list",
            "MIME-Version": "1.0",
            "List-Id": "DPDK patches and discussions <dev.dpdk.org>",
            "To": "David Marchand <david.marchand@redhat.com>,\n\tOlivier Matz <olivier.matz@6wind.com>",
            "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n\t<mailto:dev-request@dpdk.org?subject=unsubscribe>",
            "Sender": "\"dev\" <dev-bounces@dpdk.org>",
            "Content-Type": "text/plain; charset=\"us-ascii\"",
            "Received": [
                "from [92.243.14.124] (localhost [127.0.0.1])\n\tby dpdk.org (Postfix) with ESMTP id 08BF12C55;\n\tWed, 29 May 2019 23:16:04 +0200 (CEST)",
                "from wout4-smtp.messagingengine.com (wout4-smtp.messagingengine.com\n\t[64.147.123.20]) by dpdk.org (Postfix) with ESMTP id 1D3272AB\n\tfor <dev@dpdk.org>; Wed, 29 May 2019 23:16:02 +0200 (CEST)",
                "from compute1.internal (compute1.nyi.internal [10.202.2.41])\n\tby mailout.west.internal (Postfix) with ESMTP id 7916C4ED;\n\tWed, 29 May 2019 17:16:00 -0400 (EDT)",
                "from mailfrontend1 ([10.202.2.162])\n\tby compute1.internal (MEProxy); Wed, 29 May 2019 17:16:01 -0400",
                "from xps.localnet (114.149.6.93.rev.sfr.net [93.6.149.114])\n\tby mail.messagingengine.com (Postfix) with ESMTPA id 0B9BA80066;\n\tWed, 29 May 2019 17:15:56 -0400 (EDT)"
            ],
            "X-Mailman-Version": "2.1.15",
            "List-Help": "<mailto:dev-request@dpdk.org?subject=help>",
            "Content-Transfer-Encoding": "7Bit"
        }
    },
    {
        "id": 96382,
        "web_url": "http://patches.dpdk.org/comment/96382/",
        "msgid": "<5c4883bf-486f-d260-f7bc-67f5ca59983a@redhat.com>",
        "list_archive_url": "https://inbox.dpdk.org/dev/5c4883bf-486f-d260-f7bc-67f5ca59983a@redhat.com",
        "date": "2019-05-23T11:41:54",
        "subject": "Re: [dpdk-dev] [PATCH 00/15] prefix network structures",
        "submitter": {
            "id": 512,
            "url": "http://patches.dpdk.org/api/people/512/?format=api",
            "name": "Maxime Coquelin",
            "email": "maxime.coquelin@redhat.com"
        },
        "content": "On 5/21/19 6:13 PM, Olivier Matz wrote:\n> The rte_net headers conflict with the libc headers, because\n> some definitions are duplicated, sometimes with few differences.\n> \n> This patchset adds the rte_ (or RTE_) prefix to all structures, functions\n> and defines in rte_net library. This is a big changeset, that will\n> break the API of many functions, but not the ABI.\n> \n> This was discussed in [1], and requested by the techboard [2].\n> \n> patch-v1:\n> * rease on top of v19.05\n> * remove uneeded renames in drivers/net/bonding/rte_eth_bond_pmd.c\n>    and app/test-pmd/icmpecho.c (arp-related variables)\n> * do not modify base drivers, except cxgbe, thunderx, enetc, qede:\n>    only files that already contain dpdk definitions are modified.\n> * fix checkpatch issues when it does not impact the code style too\n>    much. Big warnings remain about the RTE_IPv4() macros because\n>    arguments are separated by ',' instead of ', '.\n> * add a release note patch\n> * tested compilation on x86_64-linux and x86_64-freebsd.\n> \n> rfc-v2:\n> * rebase on top of v19.05-rc1\n> \n> \n> [1] http://mails.dpdk.org/archives/dev/2018-January/087384.html\n> [2] http://mails.dpdk.org/archives/dev/2019-February/125033.html\n> \n> \n> Olivier Matz (15):\n>    net: add rte prefix to arp structures\n>    net: add rte prefix to arp defines\n>    net: add rte prefix to ether structures\n>    net: add rte prefix to ether functions\n>    net: add rte prefix to ether defines\n>    net: add rte prefix to esp structure\n>    net: add rte prefix to gre structure\n>    net: add rte prefix to icmp structure\n>    net: add rte prefix to icmp defines\n>    net: add rte prefix to ip structure\n>    net: add rte prefix to ip defines\n>    net: add rte prefix to sctp structure\n>    net: add rte prefix to tcp structure\n>    net: add rte prefix to udp structure\n>    doc: announce network api change\n> \n>   app/pdump/main.c                                   |   2 +-\n>   app/test-acl/main.c                                |   2 +-\n>   app/test-eventdev/test_perf_common.c               |   2 +-\n>   app/test-eventdev/test_pipeline_common.c           |   2 +-\n>   app/test-pipeline/pipeline_acl.c                   |  19 +-\n>   app/test-pipeline/pipeline_hash.c                  |  12 +-\n>   app/test-pmd/cmdline.c                             |  90 +++---\n>   app/test-pmd/cmdline_flow.c                        |  86 +++---\n>   app/test-pmd/config.c                              |  35 ++-\n>   app/test-pmd/csumonly.c                            | 169 +++++-----\n>   app/test-pmd/flowgen.c                             |  30 +-\n>   app/test-pmd/icmpecho.c                            | 117 +++----\n>   app/test-pmd/ieee1588fwd.c                         |  18 +-\n>   app/test-pmd/macfwd.c                              |  12 +-\n>   app/test-pmd/macswap.h                             |  12 +-\n>   app/test-pmd/macswap_common.h                      |   4 +-\n>   app/test-pmd/macswap_neon.h                        |  12 +-\n>   app/test-pmd/macswap_sse.h                         |  12 +-\n>   app/test-pmd/parameters.c                          |   6 +-\n>   app/test-pmd/testpmd.c                             |  23 +-\n>   app/test-pmd/testpmd.h                             |  30 +-\n>   app/test-pmd/txonly.c                              |  45 +--\n>   app/test-pmd/util.c                                |  34 +-\n>   app/test/packet_burst_generator.c                  | 150 ++++-----\n>   app/test/packet_burst_generator.h                  |  33 +-\n>   app/test/test_acl.c                                |   8 +-\n>   app/test/test_acl.h                                | 122 ++++----\n>   app/test/test_cmdline_etheraddr.c                  |  16 +-\n>   app/test/test_efd.c                                |  20 +-\n>   app/test/test_event_eth_rx_adapter.c               |   2 +-\n>   app/test/test_event_eth_tx_adapter.c               |   2 +-\n>   app/test/test_flow_classify.c                      |  70 +++--\n>   app/test/test_hash.c                               |  20 +-\n>   app/test/test_ipsec.c                              |  13 +-\n>   app/test/test_link_bonding.c                       | 342 ++++++++++++---------\n>   app/test/test_link_bonding_mode4.c                 | 124 ++++----\n>   app/test/test_link_bonding_rssconf.c               |   6 +-\n>   app/test/test_lpm.c                                |  76 ++---\n>   app/test/test_lpm_perf.c                           |  10 +-\n>   app/test/test_member.c                             |  20 +-\n>   app/test/test_pmd_perf.c                           |  20 +-\n>   app/test/test_sched.c                              |  24 +-\n>   app/test/test_table_acl.c                          |   8 +-\n>   app/test/test_thash.c                              |  12 +-\n>   app/test/virtual_pmd.c                             |   6 +-\n>   app/test/virtual_pmd.h                             |   2 +-\n>   doc/guides/nics/kni.rst                            |   2 +-\n>   doc/guides/prog_guide/bbdev.rst                    |   6 +-\n>   .../prog_guide/packet_classif_access_ctrl.rst      |  18 +-\n>   doc/guides/prog_guide/rte_flow.rst                 |   4 +-\n>   doc/guides/rel_notes/deprecation.rst               |   4 -\n>   doc/guides/rel_notes/release_19_08.rst             |   3 +\n>   doc/guides/sample_app_ug/flow_classify.rst         |  28 +-\n>   doc/guides/sample_app_ug/flow_filtering.rst        |   6 +-\n>   doc/guides/sample_app_ug/ip_frag.rst               |  16 +-\n>   doc/guides/sample_app_ug/ip_reassembly.rst         |  16 +-\n>   doc/guides/sample_app_ug/ipv4_multicast.rst        |  16 +-\n>   doc/guides/sample_app_ug/l2_forward_job_stats.rst  |   6 +-\n>   .../sample_app_ug/l2_forward_real_virtual.rst      |   6 +-\n>   doc/guides/sample_app_ug/l3_forward.rst            |  12 +-\n>   doc/guides/sample_app_ug/link_status_intr.rst      |   6 +-\n>   doc/guides/sample_app_ug/ptpclient.rst             |   6 +-\n>   doc/guides/sample_app_ug/rxtx_callbacks.rst        |   2 +-\n>   doc/guides/sample_app_ug/server_node_efd.rst       |  12 +-\n>   doc/guides/sample_app_ug/skeleton.rst              |   4 +-\n>   doc/guides/sample_app_ug/vmdq_dcb_forwarding.rst   |   4 +-\n>   drivers/bus/dpaa/include/compat.h                  |   2 +\n>   drivers/bus/dpaa/include/fman.h                    |   2 +-\n>   drivers/bus/dpaa/include/netcfg.h                  |   4 +-\n>   drivers/net/af_packet/rte_eth_af_packet.c          |   2 +-\n>   drivers/net/af_xdp/rte_eth_af_xdp.c                |   8 +-\n>   drivers/net/ark/ark_ethdev.c                       |  19 +-\n>   drivers/net/ark/ark_ext.h                          |   4 +-\n>   drivers/net/ark/ark_global.h                       |   5 +-\n>   drivers/net/atlantic/atl_ethdev.c                  |  27 +-\n>   drivers/net/atlantic/hw_atl/hw_atl_utils.c         |   8 +-\n>   drivers/net/atlantic/hw_atl/hw_atl_utils_fw2x.c    |   4 +-\n>   drivers/net/avp/avp_ethdev.c                       |  21 +-\n>   drivers/net/avp/rte_avp_common.h                   |   2 +-\n>   drivers/net/axgbe/axgbe_dev.c                      |   4 +-\n>   drivers/net/axgbe/axgbe_ethdev.c                   |  10 +-\n>   drivers/net/axgbe/axgbe_ethdev.h                   |   4 +-\n>   drivers/net/axgbe/axgbe_rxtx.c                     |   2 +-\n>   drivers/net/bnx2x/bnx2x.c                          |  16 +-\n>   drivers/net/bnx2x/bnx2x_ethdev.c                   |   5 +-\n>   drivers/net/bnx2x/bnx2x_ethdev.h                   |   3 +-\n>   drivers/net/bnx2x/bnx2x_vfpf.c                     |   8 +-\n>   drivers/net/bnx2x/bnx2x_vfpf.h                     |   2 +-\n>   drivers/net/bnx2x/ecore_sp.h                       |   2 +-\n>   drivers/net/bnxt/bnxt.h                            |   4 +-\n>   drivers/net/bnxt/bnxt_ethdev.c                     |  80 ++---\n>   drivers/net/bnxt/bnxt_filter.c                     |   4 +-\n>   drivers/net/bnxt/bnxt_filter.h                     |   8 +-\n>   drivers/net/bnxt/bnxt_flow.c                       |  27 +-\n>   drivers/net/bnxt/bnxt_hwrm.c                       |  41 +--\n>   drivers/net/bnxt/bnxt_hwrm.h                       |   2 +-\n>   drivers/net/bnxt/bnxt_ring.c                       |   8 +-\n>   drivers/net/bnxt/bnxt_rxq.c                        |   2 +-\n>   drivers/net/bnxt/bnxt_rxr.c                        |   4 +-\n>   drivers/net/bnxt/bnxt_vnic.c                       |   2 +-\n>   drivers/net/bnxt/rte_pmd_bnxt.c                    |  14 +-\n>   drivers/net/bnxt/rte_pmd_bnxt.h                    |   4 +-\n>   drivers/net/bonding/rte_eth_bond.h                 |   2 +-\n>   drivers/net/bonding/rte_eth_bond_8023ad.c          |  30 +-\n>   drivers/net/bonding/rte_eth_bond_8023ad.h          |  10 +-\n>   drivers/net/bonding/rte_eth_bond_8023ad_private.h  |   2 +-\n>   drivers/net/bonding/rte_eth_bond_alb.c             |  98 +++---\n>   drivers/net/bonding/rte_eth_bond_alb.h             |  10 +-\n>   drivers/net/bonding/rte_eth_bond_api.c             |   2 +-\n>   drivers/net/bonding/rte_eth_bond_args.c            |   2 +-\n>   drivers/net/bonding/rte_eth_bond_pmd.c             | 203 ++++++------\n>   drivers/net/bonding/rte_eth_bond_private.h         |   8 +-\n>   drivers/net/cxgbe/base/adapter.h                   |   2 +-\n>   drivers/net/cxgbe/cxgbe.h                          |   5 +-\n>   drivers/net/cxgbe/cxgbe_compat.h                   |   1 +\n>   drivers/net/cxgbe/cxgbe_ethdev.c                   |  14 +-\n>   drivers/net/cxgbe/cxgbe_filter.h                   |   2 +-\n>   drivers/net/cxgbe/cxgbe_flow.c                     |  10 +-\n>   drivers/net/cxgbe/cxgbe_main.c                     |   4 +-\n>   drivers/net/cxgbe/cxgbe_pfvf.h                     |   2 +-\n>   drivers/net/cxgbe/cxgbevf_main.c                   |   2 +-\n>   drivers/net/cxgbe/l2t.c                            |   8 +-\n>   drivers/net/cxgbe/l2t.h                            |   2 +-\n>   drivers/net/cxgbe/mps_tcam.c                       |  14 +-\n>   drivers/net/cxgbe/mps_tcam.h                       |   4 +-\n>   drivers/net/cxgbe/sge.c                            |   9 +-\n>   drivers/net/dpaa/dpaa_ethdev.c                     |  20 +-\n>   drivers/net/dpaa/dpaa_rxtx.c                       |  23 +-\n>   drivers/net/dpaa2/dpaa2_ethdev.c                   |  37 +--\n>   drivers/net/dpaa2/dpaa2_flow.c                     |  18 +-\n>   drivers/net/e1000/e1000_ethdev.h                   |   5 +-\n>   drivers/net/e1000/em_ethdev.c                      |  39 +--\n>   drivers/net/e1000/em_rxtx.c                        |  24 +-\n>   drivers/net/e1000/igb_ethdev.c                     |  76 ++---\n>   drivers/net/e1000/igb_flow.c                       |  12 +-\n>   drivers/net/e1000/igb_pf.c                         |  17 +-\n>   drivers/net/e1000/igb_rxtx.c                       |  23 +-\n>   drivers/net/ena/ena_ethdev.c                       |  17 +-\n>   drivers/net/ena/ena_ethdev.h                       |   2 +-\n>   drivers/net/enetc/base/enetc_hw.h                  |   4 +-\n>   drivers/net/enetc/enetc_ethdev.c                   |  21 +-\n>   drivers/net/enic/enic.h                            |   4 +-\n>   drivers/net/enic/enic_clsf.c                       |  40 +--\n>   drivers/net/enic/enic_ethdev.c                     |  29 +-\n>   drivers/net/enic/enic_flow.c                       | 114 +++----\n>   drivers/net/enic/enic_main.c                       |   4 +-\n>   drivers/net/enic/enic_res.c                        |   5 +-\n>   drivers/net/failsafe/failsafe.c                    |   8 +-\n>   drivers/net/failsafe/failsafe_args.c               |   4 +-\n>   drivers/net/failsafe/failsafe_ether.c              |   7 +-\n>   drivers/net/failsafe/failsafe_ops.c                |   6 +-\n>   drivers/net/failsafe/failsafe_private.h            |   4 +-\n>   drivers/net/fm10k/fm10k.h                          |   2 +-\n>   drivers/net/fm10k/fm10k_ethdev.c                   |  18 +-\n>   drivers/net/i40e/i40e_ethdev.c                     | 143 +++++----\n>   drivers/net/i40e/i40e_ethdev.h                     |  23 +-\n>   drivers/net/i40e/i40e_ethdev_vf.c                  |  68 ++--\n>   drivers/net/i40e/i40e_fdir.c                       | 127 ++++----\n>   drivers/net/i40e/i40e_flow.c                       |  58 ++--\n>   drivers/net/i40e/i40e_pf.c                         |  18 +-\n>   drivers/net/i40e/i40e_rxtx.c                       |  28 +-\n>   drivers/net/i40e/i40e_vf_representor.c             |   2 +-\n>   drivers/net/i40e/rte_pmd_i40e.c                    |  31 +-\n>   drivers/net/i40e/rte_pmd_i40e.h                    |   8 +-\n>   drivers/net/iavf/iavf.h                            |   4 +-\n>   drivers/net/iavf/iavf_ethdev.c                     |  53 ++--\n>   drivers/net/iavf/iavf_rxtx.c                       |  14 +-\n>   drivers/net/iavf/iavf_vchnl.c                      |   8 +-\n>   drivers/net/ice/ice_ethdev.c                       |  64 ++--\n>   drivers/net/ice/ice_ethdev.h                       |   6 +-\n>   drivers/net/ice/ice_rxtx.c                         |  28 +-\n>   drivers/net/ipn3ke/ipn3ke_ethdev.h                 |   6 +-\n>   drivers/net/ipn3ke/ipn3ke_flow.c                   |   4 +-\n>   drivers/net/ipn3ke/ipn3ke_representor.c            |  21 +-\n>   drivers/net/ixgbe/ixgbe_ethdev.c                   | 107 ++++---\n>   drivers/net/ixgbe/ixgbe_ethdev.h                   |   4 +-\n>   drivers/net/ixgbe/ixgbe_flow.c                     |  22 +-\n>   drivers/net/ixgbe/ixgbe_pf.c                       |  16 +-\n>   drivers/net/ixgbe/ixgbe_rxtx.c                     |  18 +-\n>   drivers/net/ixgbe/ixgbe_vf_representor.c           |   4 +-\n>   drivers/net/ixgbe/rte_pmd_ixgbe.c                  |  11 +-\n>   drivers/net/ixgbe/rte_pmd_ixgbe.h                  |   2 +-\n>   drivers/net/kni/rte_eth_kni.c                      |   6 +-\n>   drivers/net/liquidio/lio_ethdev.c                  |  23 +-\n>   drivers/net/mlx4/mlx4.c                            |   4 +-\n>   drivers/net/mlx4/mlx4.h                            |  10 +-\n>   drivers/net/mlx4/mlx4_ethdev.c                     |  12 +-\n>   drivers/net/mlx4/mlx4_flow.c                       |  16 +-\n>   drivers/net/mlx4/mlx4_rxtx.c                       |   2 +-\n>   drivers/net/mlx5/mlx5.c                            |   4 +-\n>   drivers/net/mlx5/mlx5.h                            |  15 +-\n>   drivers/net/mlx5/mlx5_flow.c                       |  22 +-\n>   drivers/net/mlx5/mlx5_flow_dv.c                    |  44 +--\n>   drivers/net/mlx5/mlx5_flow_tcf.c                   |  66 ++--\n>   drivers/net/mlx5/mlx5_flow_verbs.c                 |  30 +-\n>   drivers/net/mlx5/mlx5_mac.c                        |  18 +-\n>   drivers/net/mlx5/mlx5_nl.c                         |  28 +-\n>   drivers/net/mlx5/mlx5_rxtx.c                       |   6 +-\n>   drivers/net/mlx5/mlx5_rxtx.h                       |   2 +-\n>   drivers/net/mlx5/mlx5_rxtx_vec_neon.h              |   8 +-\n>   drivers/net/mlx5/mlx5_rxtx_vec_sse.h               |  10 +-\n>   drivers/net/mlx5/mlx5_trigger.c                    |   6 +-\n>   drivers/net/mvneta/mvneta_ethdev.c                 |  22 +-\n>   drivers/net/mvneta/mvneta_ethdev.h                 |   6 +-\n>   drivers/net/mvpp2/mrvl_ethdev.c                    |  22 +-\n>   drivers/net/mvpp2/mrvl_ethdev.h                    |   6 +-\n>   drivers/net/mvpp2/mrvl_flow.c                      |   4 +-\n>   drivers/net/netvsc/hn_ethdev.c                     |   4 +-\n>   drivers/net/netvsc/hn_nvs.c                        |   2 +-\n>   drivers/net/netvsc/hn_rndis.c                      |   2 +-\n>   drivers/net/netvsc/hn_rxtx.c                       |  12 +-\n>   drivers/net/netvsc/hn_var.h                        |   4 +-\n>   drivers/net/netvsc/hn_vf.c                         |   8 +-\n>   drivers/net/nfb/nfb_ethdev.c                       |  16 +-\n>   drivers/net/nfp/nfp_net.c                          |  22 +-\n>   drivers/net/nfp/nfp_net_pmd.h                      |   2 +-\n>   drivers/net/null/rte_eth_null.c                    |   6 +-\n>   drivers/net/octeontx/octeontx_ethdev.c             |   9 +-\n>   drivers/net/octeontx/octeontx_ethdev.h             |   2 +-\n>   drivers/net/pcap/rte_eth_pcap.c                    |  22 +-\n>   drivers/net/qede/base/bcm_osal.h                   |   4 +-\n>   drivers/net/qede/qede_ethdev.c                     |  71 +++--\n>   drivers/net/qede/qede_ethdev.h                     |   6 +-\n>   drivers/net/qede/qede_filter.c                     |  68 ++--\n>   drivers/net/qede/qede_if.h                         |   4 +-\n>   drivers/net/qede/qede_main.c                       |   6 +-\n>   drivers/net/qede/qede_rxtx.c                       |  34 +-\n>   drivers/net/qede/qede_rxtx.h                       |   2 +-\n>   drivers/net/ring/rte_eth_ring.c                    |   4 +-\n>   drivers/net/sfc/sfc.h                              |   2 +-\n>   drivers/net/sfc/sfc_ef10_tx.c                      |   4 +-\n>   drivers/net/sfc/sfc_ethdev.c                       |  24 +-\n>   drivers/net/sfc/sfc_flow.c                         |  12 +-\n>   drivers/net/sfc/sfc_port.c                         |   8 +-\n>   drivers/net/sfc/sfc_tso.c                          |   4 +-\n>   drivers/net/sfc/sfc_tso.h                          |   4 +-\n>   drivers/net/softnic/parser.c                       |  18 +-\n>   drivers/net/softnic/parser.h                       |   2 +-\n>   drivers/net/softnic/rte_eth_softnic.c              |   2 +-\n>   drivers/net/softnic/rte_eth_softnic_flow.c         |   4 +-\n>   drivers/net/softnic/rte_eth_softnic_pipeline.c     |  40 +--\n>   drivers/net/szedata2/rte_eth_szedata2.c            |   8 +-\n>   drivers/net/tap/rte_eth_tap.c                      |  68 ++--\n>   drivers/net/tap/rte_eth_tap.h                      |   4 +-\n>   drivers/net/tap/tap_bpf_program.c                  |  14 +-\n>   drivers/net/tap/tap_flow.c                         |  16 +-\n>   drivers/net/thunderx/base/nicvf_plat.h             |   5 +-\n>   drivers/net/thunderx/nicvf_ethdev.c                |  19 +-\n>   drivers/net/thunderx/nicvf_struct.h                |   2 +-\n>   drivers/net/vdev_netvsc/vdev_netvsc.c              |  16 +-\n>   drivers/net/vhost/rte_eth_vhost.c                  |  12 +-\n>   drivers/net/virtio/virtio_ethdev.c                 |  78 ++---\n>   drivers/net/virtio/virtio_pci.h                    |   4 +-\n>   drivers/net/virtio/virtio_rxtx.c                   |  33 +-\n>   drivers/net/virtio/virtio_user/vhost_kernel_tap.c  |   2 +-\n>   drivers/net/virtio/virtio_user/virtio_user_dev.c   |   6 +-\n>   drivers/net/virtio/virtio_user/virtio_user_dev.h   |   2 +-\n>   drivers/net/virtio/virtio_user_ethdev.c            |   8 +-\n>   drivers/net/virtio/virtqueue.h                     |   2 +-\n>   drivers/net/vmxnet3/vmxnet3_ethdev.c               |  12 +-\n>   drivers/net/vmxnet3/vmxnet3_ethdev.h               |   2 +-\n>   drivers/net/vmxnet3/vmxnet3_rxtx.c                 |  47 +--\n>   examples/bbdev_app/main.c                          |  41 +--\n>   examples/bond/main.c                               |  83 ++---\n>   examples/distributor/main.c                        |   4 +-\n>   examples/ethtool/ethtool-app/ethapp.c              |   8 +-\n>   examples/ethtool/ethtool-app/main.c                |  10 +-\n>   examples/ethtool/lib/rte_ethtool.c                 |   8 +-\n>   examples/ethtool/lib/rte_ethtool.h                 |   7 +-\n>   examples/eventdev_pipeline/main.c                  |   4 +-\n>   examples/eventdev_pipeline/pipeline_common.h       |  10 +-\n>   examples/flow_classify/flow_classify.c             |  30 +-\n>   examples/flow_filtering/main.c                     |  10 +-\n>   examples/ip_fragmentation/main.c                   |  69 +++--\n>   examples/ip_pipeline/cli.c                         |   4 +-\n>   examples/ip_pipeline/kni.c                         |   2 +-\n>   examples/ip_pipeline/parser.c                      |  18 +-\n>   examples/ip_pipeline/parser.h                      |   2 +-\n>   examples/ip_pipeline/pipeline.c                    |  40 +--\n>   examples/ip_reassembly/main.c                      |  51 +--\n>   examples/ipsec-secgw/esp.c                         |  47 +--\n>   examples/ipsec-secgw/ipsec-secgw.c                 |  43 +--\n>   examples/ipsec-secgw/ipsec.h                       |   2 +-\n>   examples/ipsec-secgw/parser.c                      |   4 +-\n>   examples/ipsec-secgw/sa.c                          |  16 +-\n>   examples/ipv4_multicast/main.c                     |  60 ++--\n>   examples/kni/main.c                                |  14 +-\n>   examples/l2fwd-cat/l2fwd-cat.c                     |   4 +-\n>   examples/l2fwd-crypto/main.c                       |  26 +-\n>   examples/l2fwd-jobstats/main.c                     |   8 +-\n>   examples/l2fwd-keepalive/main.c                    |   8 +-\n>   examples/l2fwd/main.c                              |   8 +-\n>   examples/l3fwd-acl/main.c                          | 106 ++++---\n>   examples/l3fwd-power/main.c                        | 102 +++---\n>   examples/l3fwd-vf/main.c                           |  68 ++--\n>   examples/l3fwd/l3fwd.h                             |   8 +-\n>   examples/l3fwd/l3fwd_altivec.h                     |  26 +-\n>   examples/l3fwd/l3fwd_common.h                      |   4 +-\n>   examples/l3fwd/l3fwd_em.c                          |  46 +--\n>   examples/l3fwd/l3fwd_em.h                          |  22 +-\n>   examples/l3fwd/l3fwd_em_hlm.h                      |  19 +-\n>   examples/l3fwd/l3fwd_em_hlm_neon.h                 |  20 +-\n>   examples/l3fwd/l3fwd_em_hlm_sse.h                  |  16 +-\n>   examples/l3fwd/l3fwd_em_sequential.h               |  19 +-\n>   examples/l3fwd/l3fwd_lpm.c                         |  50 +--\n>   examples/l3fwd/l3fwd_lpm.h                         |  22 +-\n>   examples/l3fwd/l3fwd_lpm_altivec.h                 |  20 +-\n>   examples/l3fwd/l3fwd_lpm_neon.h                    |  30 +-\n>   examples/l3fwd/l3fwd_lpm_sse.h                     |  20 +-\n>   examples/l3fwd/l3fwd_neon.h                        |  26 +-\n>   examples/l3fwd/l3fwd_sse.h                         |  26 +-\n>   examples/l3fwd/main.c                              |  20 +-\n>   examples/link_status_interrupt/main.c              |   8 +-\n>   examples/load_balancer/runtime.c                   |   8 +-\n>   .../client_server_mp/mp_server/main.c              |   2 +-\n>   examples/packet_ordering/main.c                    |   2 +-\n>   examples/performance-thread/l3fwd-thread/main.c    | 337 ++++++++++----------\n>   examples/ptpclient/ptpclient.c                     |  32 +-\n>   examples/qos_meter/main.c                          |   5 +-\n>   examples/qos_sched/init.c                          |   2 +-\n>   examples/quota_watermark/qw/main.c                 |   8 +-\n>   examples/rxtx_callbacks/main.c                     |   4 +-\n>   examples/server_node_efd/node/node.c               |   6 +-\n>   examples/server_node_efd/server/main.c             |   8 +-\n>   examples/skeleton/basicfwd.c                       |   4 +-\n>   examples/tep_termination/main.c                    |   2 +-\n>   examples/tep_termination/main.h                    |   2 +-\n>   examples/tep_termination/vxlan.c                   | 115 +++----\n>   examples/tep_termination/vxlan.h                   |   8 +-\n>   examples/tep_termination/vxlan_setup.c             |  32 +-\n>   examples/tep_termination/vxlan_setup.h             |   2 +-\n>   examples/vhost/main.c                              |  42 +--\n>   examples/vhost/main.h                              |   2 +-\n>   examples/vm_power_manager/channel_monitor.c        |  12 +-\n>   .../guest_cli/vm_power_cli_guest.c                 |   2 +-\n>   examples/vm_power_manager/main.c                   |   6 +-\n>   examples/vmdq/main.c                               |  12 +-\n>   examples/vmdq_dcb/main.c                           |  12 +-\n>   lib/librte_ethdev/rte_class_eth.c                  |   4 +-\n>   lib/librte_ethdev/rte_eth_ctrl.h                   |  12 +-\n>   lib/librte_ethdev/rte_ethdev.c                     |  59 ++--\n>   lib/librte_ethdev/rte_ethdev.h                     |  15 +-\n>   lib/librte_ethdev/rte_ethdev_core.h                |  12 +-\n>   lib/librte_ethdev/rte_flow.h                       |  34 +-\n>   lib/librte_eventdev/rte_event_eth_rx_adapter.c     |  33 +-\n>   lib/librte_gro/gro_tcp4.c                          |  26 +-\n>   lib/librte_gro/gro_tcp4.h                          |  22 +-\n>   lib/librte_gro/gro_vxlan_tcp4.c                    |  66 ++--\n>   lib/librte_gro/gro_vxlan_tcp4.h                    |   6 +-\n>   lib/librte_gso/gso_common.h                        |  16 +-\n>   lib/librte_gso/gso_tcp4.c                          |  12 +-\n>   lib/librte_gso/gso_tunnel_tcp4.c                   |  14 +-\n>   lib/librte_gso/gso_udp4.c                          |  10 +-\n>   lib/librte_gso/rte_gso.h                           |   8 +-\n>   lib/librte_hash/rte_thash.h                        |   3 +-\n>   lib/librte_ip_frag/rte_ip_frag.h                   |  13 +-\n>   lib/librte_ip_frag/rte_ipv4_fragmentation.c        |  42 +--\n>   lib/librte_ip_frag/rte_ipv4_reassembly.c           |  14 +-\n>   lib/librte_ip_frag/rte_ipv6_fragmentation.c        |  28 +-\n>   lib/librte_ip_frag/rte_ipv6_reassembly.c           |   6 +-\n>   lib/librte_ipsec/crypto.h                          |   2 +-\n>   lib/librte_ipsec/esp_inb.c                         |  10 +-\n>   lib/librte_ipsec/esp_outb.c                        |   8 +-\n>   lib/librte_ipsec/iph.h                             |   8 +-\n>   lib/librte_ipsec/sa.c                              |  10 +-\n>   lib/librte_kni/rte_kni.c                           |   4 +-\n>   lib/librte_kni/rte_kni.h                           |   2 +-\n>   lib/librte_net/rte_arp.c                           |  33 +-\n>   lib/librte_net/rte_arp.h                           |  36 +--\n>   lib/librte_net/rte_esp.h                           |   2 +-\n>   lib/librte_net/rte_ether.h                         | 189 ++++++------\n>   lib/librte_net/rte_gre.h                           |   2 +-\n>   lib/librte_net/rte_icmp.h                          |   6 +-\n>   lib/librte_net/rte_ip.h                            |  75 ++---\n>   lib/librte_net/rte_net.c                           |  94 +++---\n>   lib/librte_net/rte_net.h                           |  28 +-\n>   lib/librte_net/rte_sctp.h                          |   2 +-\n>   lib/librte_net/rte_tcp.h                           |   2 +-\n>   lib/librte_net/rte_udp.h                           |   2 +-\n>   lib/librte_pipeline/rte_table_action.c             | 242 ++++++++-------\n>   lib/librte_pipeline/rte_table_action.h             |   4 +-\n>   lib/librte_port/rte_port_ras.c                     |  10 +-\n>   lib/librte_port/rte_port_source_sink.c             |   6 +-\n>   lib/librte_vhost/vhost.h                           |   2 +-\n>   lib/librte_vhost/virtio_net.c                      |  43 +--\n>   385 files changed, 4563 insertions(+), 4234 deletions(-)\n> \n\nReviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com>\n\nThanks,\nMaxime",
        "headers": {
            "Subject": "Re: [dpdk-dev] [PATCH 00/15] prefix network structures",
            "List-Post": "<mailto:dev@dpdk.org>",
            "X-Original-To": "patchwork@dpdk.org",
            "Message-ID": "<5c4883bf-486f-d260-f7bc-67f5ca59983a@redhat.com>",
            "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n\t<mailto:dev-request@dpdk.org?subject=subscribe>",
            "From": "Maxime Coquelin <maxime.coquelin@redhat.com>",
            "Return-Path": "<dev-bounces@dpdk.org>",
            "X-BeenThere": "dev@dpdk.org",
            "List-Archive": "<http://mails.dpdk.org/archives/dev/>",
            "X-Scanned-By": "MIMEDefang 2.79 on 10.5.11.11",
            "User-Agent": "Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101\n\tThunderbird/60.6.1",
            "Date": "Thu, 23 May 2019 13:41:54 +0200",
            "In-Reply-To": "<20190521161315.25500-1-olivier.matz@6wind.com>",
            "X-Greylist": "Sender IP whitelisted, not delayed by milter-greylist-4.5.16\n\t(mx1.redhat.com [10.5.110.31]); Thu, 23 May 2019 11:41:59 +0000 (UTC)",
            "X-Mailman-Version": "2.1.15",
            "Errors-To": "dev-bounces@dpdk.org",
            "References": "<20190410083218.17531-1-olivier.matz@6wind.com>\n\t<20190521161315.25500-1-olivier.matz@6wind.com>",
            "Delivered-To": "patchwork@dpdk.org",
            "Precedence": "list",
            "MIME-Version": "1.0",
            "List-Help": "<mailto:dev-request@dpdk.org?subject=help>",
            "List-Id": "DPDK patches and discussions <dev.dpdk.org>",
            "To": "Olivier Matz <olivier.matz@6wind.com>, dev@dpdk.org",
            "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n\t<mailto:dev-request@dpdk.org?subject=unsubscribe>",
            "Sender": "\"dev\" <dev-bounces@dpdk.org>",
            "Content-Language": "en-US",
            "Content-Type": "text/plain; charset=utf-8; format=flowed",
            "Received": [
                "from [92.243.14.124] (localhost [127.0.0.1])\n\tby dpdk.org (Postfix) with ESMTP id 0A64E5689;\n\tThu, 23 May 2019 13:42:07 +0200 (CEST)",
                "from mx1.redhat.com (mx1.redhat.com [209.132.183.28])\n\tby dpdk.org (Postfix) with ESMTP id 3A1A14F91\n\tfor <dev@dpdk.org>; Thu, 23 May 2019 13:42:05 +0200 (CEST)",
                "from smtp.corp.redhat.com\n\t(int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11])\n\t(using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))\n\t(No client certificate requested)\n\tby mx1.redhat.com (Postfix) with ESMTPS id 2FD9FC065135;\n\tThu, 23 May 2019 11:41:59 +0000 (UTC)",
                "from [10.36.112.60] (ovpn-112-60.ams2.redhat.com [10.36.112.60])\n\tby smtp.corp.redhat.com (Postfix) with ESMTPS id AE080620D2;\n\tThu, 23 May 2019 11:41:55 +0000 (UTC)"
            ],
            "Cc": "stephen@networkplumber.org, ferruh.yigit@intel.com",
            "Content-Transfer-Encoding": "7bit"
        }
    },
    {
        "id": 96414,
        "web_url": "http://patches.dpdk.org/comment/96414/",
        "msgid": "<e74ea68d-cf0b-2ea8-b1c2-b71d79aedb7e@intel.com>",
        "list_archive_url": "https://inbox.dpdk.org/dev/e74ea68d-cf0b-2ea8-b1c2-b71d79aedb7e@intel.com",
        "date": "2019-05-24T11:38:23",
        "subject": "Re: [dpdk-dev] [PATCH 00/15] prefix network structures",
        "submitter": {
            "id": 324,
            "url": "http://patches.dpdk.org/api/people/324/?format=api",
            "name": "Ferruh Yigit",
            "email": "ferruh.yigit@intel.com"
        },
        "content": "On 5/21/2019 5:13 PM, Olivier Matz wrote:\n> The rte_net headers conflict with the libc headers, because\n> some definitions are duplicated, sometimes with few differences.\n> \n> This patchset adds the rte_ (or RTE_) prefix to all structures, functions\n> and defines in rte_net library. This is a big changeset, that will\n> break the API of many functions, but not the ABI.\n> \n> This was discussed in [1], and requested by the techboard [2].\n> \n> patch-v1:\n> * rease on top of v19.05\n> * remove uneeded renames in drivers/net/bonding/rte_eth_bond_pmd.c\n>   and app/test-pmd/icmpecho.c (arp-related variables)\n> * do not modify base drivers, except cxgbe, thunderx, enetc, qede:\n>   only files that already contain dpdk definitions are modified.\n> * fix checkpatch issues when it does not impact the code style too\n>   much. Big warnings remain about the RTE_IPv4() macros because\n>   arguments are separated by ',' instead of ', '.\n> * add a release note patch\n> * tested compilation on x86_64-linux and x86_64-freebsd.\n> \n> rfc-v2:\n> * rebase on top of v19.05-rc1\n> \n> \n> [1] http://mails.dpdk.org/archives/dev/2018-January/087384.html\n> [2] http://mails.dpdk.org/archives/dev/2019-February/125033.html\n> \n> \n> Olivier Matz (15):\n>   net: add rte prefix to arp structures\n>   net: add rte prefix to arp defines\n>   net: add rte prefix to ether structures\n>   net: add rte prefix to ether functions\n>   net: add rte prefix to ether defines\n>   net: add rte prefix to esp structure\n>   net: add rte prefix to gre structure\n>   net: add rte prefix to icmp structure\n>   net: add rte prefix to icmp defines\n>   net: add rte prefix to ip structure\n>   net: add rte prefix to ip defines\n>   net: add rte prefix to sctp structure\n>   net: add rte prefix to tcp structure\n>   net: add rte prefix to udp structure\n>   doc: announce network api change\n\nReviewed-by: Stephen Hemminger <stephen@networkplumber.org>\nReviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com>\n\nFor series,\nReviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>\n\nSeries applied to dpdk-next-net/master, thanks.",
        "headers": {
            "X-Amp-File-Uploaded": "False",
            "Subject": "Re: [dpdk-dev] [PATCH 00/15] prefix network structures",
            "List-Post": "<mailto:dev@dpdk.org>",
            "X-Original-To": "patchwork@dpdk.org",
            "Openpgp": "preference=signencrypt",
            "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n\t<mailto:dev-request@dpdk.org?subject=subscribe>",
            "From": "Ferruh Yigit <ferruh.yigit@intel.com>",
            "Return-Path": "<dev-bounces@dpdk.org>",
            "X-BeenThere": "dev@dpdk.org",
            "List-Archive": "<http://mails.dpdk.org/archives/dev/>",
            "Date": "Fri, 24 May 2019 12:38:23 +0100",
            "User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64; rv:60.0) Gecko/20100101\n\tThunderbird/60.7.0",
            "In-Reply-To": "<20190521161315.25500-1-olivier.matz@6wind.com>",
            "Message-ID": "<e74ea68d-cf0b-2ea8-b1c2-b71d79aedb7e@intel.com>",
            "Errors-To": "dev-bounces@dpdk.org",
            "References": "<20190410083218.17531-1-olivier.matz@6wind.com>\n\t<20190521161315.25500-1-olivier.matz@6wind.com>",
            "X-Amp-Result": "SKIPPED(no attachment in message)",
            "Delivered-To": "patchwork@dpdk.org",
            "Precedence": "list",
            "Received": [
                "from [92.243.14.124] (localhost [127.0.0.1])\n\tby dpdk.org (Postfix) with ESMTP id 5A94125D9;\n\tFri, 24 May 2019 13:38:28 +0200 (CEST)",
                "from mga07.intel.com (mga07.intel.com [134.134.136.100])\n\tby dpdk.org (Postfix) with ESMTP id 6650814EC\n\tfor <dev@dpdk.org>; Fri, 24 May 2019 13:38:26 +0200 (CEST)",
                "from fmsmga007.fm.intel.com ([10.253.24.52])\n\tby orsmga105.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384;\n\t24 May 2019 04:38:25 -0700",
                "from fyigit-mobl.ger.corp.intel.com (HELO [10.237.221.36])\n\t([10.237.221.36])\n\tby fmsmga007.fm.intel.com with ESMTP; 24 May 2019 04:38:24 -0700"
            ],
            "MIME-Version": "1.0",
            "List-Help": "<mailto:dev-request@dpdk.org?subject=help>",
            "List-Id": "DPDK patches and discussions <dev.dpdk.org>",
            "Autocrypt": "addr=ferruh.yigit@intel.com; prefer-encrypt=mutual; keydata=\n\tmQINBFXZCFABEADCujshBOAaqPZpwShdkzkyGpJ15lmxiSr3jVMqOtQS/sB3FYLT0/d3+bvy\n\tqbL9YnlbPyRvZfnP3pXiKwkRoR1RJwEo2BOf6hxdzTmLRtGtwWzI9MwrUPj6n/ldiD58VAGQ\n\t+iR1I/z9UBUN/ZMksElA2D7Jgg7vZ78iKwNnd+vLBD6I61kVrZ45Vjo3r+pPOByUBXOUlxp9\n\tGWEKKIrJ4eogqkVNSixN16VYK7xR+5OUkBYUO+sE6etSxCr7BahMPKxH+XPlZZjKrxciaWQb\n\t+dElz3Ab4Opl+ZT/bK2huX+W+NJBEBVzjTkhjSTjcyRdxvS1gwWRuXqAml/sh+KQjPV1PPHF\n\tYK5LcqLkle+OKTCa82OvUb7cr+ALxATIZXQkgmn+zFT8UzSS3aiBBohg3BtbTIWy51jNlYdy\n\tezUZ4UxKSsFuUTPt+JjHQBvF7WKbmNGS3fCid5Iag4tWOfZoqiCNzxApkVugltxoc6rG2TyX\n\tCmI2rP0mQ0GOsGXA3+3c1MCdQFzdIn/5tLBZyKy4F54UFo35eOX8/g7OaE+xrgY/4bZjpxC1\n\t1pd66AAtKb3aNXpHvIfkVV6NYloo52H+FUE5ZDPNCGD0/btFGPWmWRmkPybzColTy7fmPaGz\n\tcBcEEqHK4T0aY4UJmE7Ylvg255Kz7s6wGZe6IR3N0cKNv++O7QARAQABtCVGZXJydWggWWln\n\taXQgPGZlcnJ1aC55aWdpdEBpbnRlbC5jb20+iQJUBBMBCgA+AhsDAh4BAheABQkI71rKFiEE\n\t0jZTh0IuwoTjmYHH+TPrQ98TYR8FAlznMMQFCwkIBwMFFQoJCAsFFgIDAQAACgkQ+TPrQ98T\n\tYR/B9Q//a57esjq996nfZVm7AsUl7zbvhN+Ojity25ib2gcSVVsAN2j6lcQS4hf6/OVvRj3q\n\tCgebJ4o2gXR6X12UzWBJL7NE8Xpc70MvUIe0r11ykurQ9n9jUaWMjxdSqBPF93hU+Z/MZe5M\n\t1rW5O2VJLuTJzkDw3EYUCbHOwPjeaS8Qqj3RI0LYbGthbHBIp9CsjkgsJSjTT5GQ8AQWkE7I\n\tz+hvPx6f1rllfjxFyi4DI3jLhAI+j1Nm+l+ESyoX59HrLTHAvq4RPkLpTnGBj9gOnJ+5sVEr\n\tGE0fcffsNcuMSkpqSEoJCPAHmChoLgezskhhsy0BiU3xlSIj1Dx2XMDerUXFOK3ftlbYNRte\n\tHQy4EKubfZRB8H5Rvcpksom3fRBDcJT8zw+PTH14htRApU9f8I/RamQ7Ujks7KuaB7JX5QaG\n\tgMjfPzHGYX9PfF6KIchaFmAWLytIP1t0ht8LpJkjtvUCSQZ2VxpCXwKyUzPDIF3co3tp90o7\n\tX07uiC5ymX0K0+Owqs6zeslLY6DMxNdt8ye+h1TVkSZ5g4dCs4C/aiEF230+luL1CnejOv/K\n\t/s1iSbXQzJNM7be3FlRUz4FdwsfKiJJF7xYALSBnSvEB04R7I2P2V9Zpudkq6DRT6HZjBeJ1\n\tpBF2J655cdoenPBIeimjnnh4K7YZBzwOLJf2c6u76fe5Ag0EV9ZMvgEQAKc0Db17xNqtSwEv\n\tmfp4tkddwW9XA0tWWKtY4KUdd/jijYqc3fDD54ESYpV8QWj0xK4YM0dLxnDU2IYxjEshSB1T\n\tqAatVWz9WtBYvzalsyTqMKP3w34FciuL7orXP4AibPtrHuIXWQOBECcVZTTOdZYGAzaYzxiA\n\tONzF9eTiwIqe9/oaOjTwTLnOarHt16QApTYQSnxDUQljeNvKYt1lZE/gAUUxNLWsYyTT+22/\n\tvU0GDUahsJxs1+f1yEr+OGrFiEAmqrzpF0lCS3f/3HVTU6rS9cK3glVUeaTF4+1SK5ZNO35p\n\tiVQCwphmxa+dwTG/DvvHYCtgOZorTJ+OHfvCnSVjsM4kcXGjJPy3JZmUtyL9UxEbYlrffGPQ\n\tI3gLXIGD5AN5XdAXFCjjaID/KR1c9RHd7Oaw0Pdcq9UtMLgM1vdX8RlDuMGPrj5sQrRVbgYH\n\tfVU/TQCk1C9KhzOwg4Ap2T3tE1umY/DqrXQgsgH71PXFucVjOyHMYXXugLT8YQ0gcBPHy9mZ\n\tqw5mgOI5lCl6d4uCcUT0l/OEtPG/rA1lxz8ctdFBVOQOxCvwRG2QCgcJ/UTn5vlivul+cThi\n\t6ERPvjqjblLncQtRg8izj2qgmwQkvfj+h7Ex88bI8iWtu5+I3K3LmNz/UxHBSWEmUnkg4fJl\n\tRr7oItHsZ0ia6wWQ8lQnABEBAAGJAjwEGAEKACYCGwwWIQTSNlOHQi7ChOOZgcf5M+tD3xNh\n\tHwUCXOcvZgUJBvIWKAAKCRD5M+tD3xNhHxhBD/9toXMIaPIVFd9w1nKsRDM1GE6gZe4jie8q\n\tMJpeHB9O+936fSXA0W2X0het60wJQQ45O8TpTcxpc9nGzcE4MTaLAI3E8TjIXAO0cPqUNLyp\n\tg0DXezmTw5BU+SKZ51+jSKOtFmzJCHOJZQaMeCHD+G3CrdUHQVQBb5AeuH3KFv9ltgDcWsc8\n\tYO70o3+tGHwcEnyXLdrI0q05wV7ncnLdkgVo+VUN4092bNMPwYly1TZWcU3Jw5gczOUEfTY7\n\tsgo6E/sGX3B+FzgIs5t4yi1XOweCAQ/mPnb6uFeNENEFyGKyMG1HtjwBqnftbiFO3qitEIUY\n\txWGQH23oKscv7i9lT0gg2D+ktzZhVWwHJVY/2vWSB9aCSWChcH2BT+lWrkwSpoPhy+almM84\n\tQz2wF72/d4ce4L27pSrS+vOXtXHLGOOGcAn8yr9TV0kM4aR+NbGBRXGKhG6w4lY54uNd9IBa\n\tARIPUhij5JSygxZCBaJKo+X64AHGkk5bXq+f0anwAMNuJXbYC/lz4DEdKmPgQGShOWNs1Y1a\n\tN3cI87Hun/RBVwQ0a3Tr1g6OWJ6xK8cYbMcoR8NZ7L9ALMeJeuUDQR39+fEeHg/6sQN0P0mv\n\t0sL+//BAJphCzDk8ztbrFw+JaPtgzZpRSM6JhxnY+YMAsatJRXA0WSpYP5zzl7yu/GZJIgsv\n\tVQ==",
            "To": "Olivier Matz <olivier.matz@6wind.com>, dev@dpdk.org",
            "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n\t<mailto:dev-request@dpdk.org?subject=unsubscribe>",
            "Sender": "\"dev\" <dev-bounces@dpdk.org>",
            "Content-Language": "en-US",
            "Content-Type": "text/plain; charset=utf-8",
            "X-ExtLoop1": "1",
            "X-Mailman-Version": "2.1.15",
            "Cc": "stephen@networkplumber.org, Maxime Coquelin <maxime.coquelin@redhat.com>,\n\tThomas Monjalon <thomas@monjalon.net>",
            "Content-Transfer-Encoding": "7bit"
        }
    },
    {
        "id": 96328,
        "web_url": "http://patches.dpdk.org/comment/96328/",
        "msgid": "<20190521092310.44d1538a@hermes.lan>",
        "list_archive_url": "https://inbox.dpdk.org/dev/20190521092310.44d1538a@hermes.lan",
        "date": "2019-05-21T16:23:10",
        "subject": "Re: [dpdk-dev] [PATCH 00/15] prefix network structures",
        "submitter": {
            "id": 27,
            "url": "http://patches.dpdk.org/api/people/27/?format=api",
            "name": "Stephen Hemminger",
            "email": "stephen@networkplumber.org"
        },
        "content": "On Tue, 21 May 2019 18:13:00 +0200\nOlivier Matz <olivier.matz@6wind.com> wrote:\n\n> The rte_net headers conflict with the libc headers, because\n> some definitions are duplicated, sometimes with few differences.\n> \n> This patchset adds the rte_ (or RTE_) prefix to all structures, functions\n> and defines in rte_net library. This is a big changeset, that will\n> break the API of many functions, but not the ABI.\n> \n> This was discussed in [1], and requested by the techboard [2].\n> \n> patch-v1:\n> * rease on top of v19.05\n> * remove uneeded renames in drivers/net/bonding/rte_eth_bond_pmd.c\n>   and app/test-pmd/icmpecho.c (arp-related variables)\n> * do not modify base drivers, except cxgbe, thunderx, enetc, qede:\n>   only files that already contain dpdk definitions are modified.\n> * fix checkpatch issues when it does not impact the code style too\n>   much. Big warnings remain about the RTE_IPv4() macros because\n>   arguments are separated by ',' instead of ', '.\n> * add a release note patch\n> * tested compilation on x86_64-linux and x86_64-freebsd.\n> \n> rfc-v2:\n> * rebase on top of v19.05-rc1\n> \n> \n> [1] http://mails.dpdk.org/archives/dev/2018-January/087384.html\n> [2] http://mails.dpdk.org/archives/dev/2019-February/125033.html\n> \n> \n> Olivier Matz (15):\n>   net: add rte prefix to arp structures\n>   net: add rte prefix to arp defines\n>   net: add rte prefix to ether structures\n>   net: add rte prefix to ether functions\n>   net: add rte prefix to ether defines\n>   net: add rte prefix to esp structure\n>   net: add rte prefix to gre structure\n>   net: add rte prefix to icmp structure\n>   net: add rte prefix to icmp defines\n>   net: add rte prefix to ip structure\n>   net: add rte prefix to ip defines\n>   net: add rte prefix to sctp structure\n>   net: add rte prefix to tcp structure\n>   net: add rte prefix to udp structure\n>   doc: announce network api change\n> \n>  app/pdump/main.c                                   |   2 +-\n>  app/test-acl/main.c                                |   2 +-\n>  app/test-eventdev/test_perf_common.c               |   2 +-\n>  app/test-eventdev/test_pipeline_common.c           |   2 +-\n>  app/test-pipeline/pipeline_acl.c                   |  19 +-\n>  app/test-pipeline/pipeline_hash.c                  |  12 +-\n>  app/test-pmd/cmdline.c                             |  90 +++---\n>  app/test-pmd/cmdline_flow.c                        |  86 +++---\n>  app/test-pmd/config.c                              |  35 ++-\n>  app/test-pmd/csumonly.c                            | 169 +++++-----\n>  app/test-pmd/flowgen.c                             |  30 +-\n>  app/test-pmd/icmpecho.c                            | 117 +++----\n>  app/test-pmd/ieee1588fwd.c                         |  18 +-\n>  app/test-pmd/macfwd.c                              |  12 +-\n>  app/test-pmd/macswap.h                             |  12 +-\n>  app/test-pmd/macswap_common.h                      |   4 +-\n>  app/test-pmd/macswap_neon.h                        |  12 +-\n>  app/test-pmd/macswap_sse.h                         |  12 +-\n>  app/test-pmd/parameters.c                          |   6 +-\n>  app/test-pmd/testpmd.c                             |  23 +-\n>  app/test-pmd/testpmd.h                             |  30 +-\n>  app/test-pmd/txonly.c                              |  45 +--\n>  app/test-pmd/util.c                                |  34 +-\n>  app/test/packet_burst_generator.c                  | 150 ++++-----\n>  app/test/packet_burst_generator.h                  |  33 +-\n>  app/test/test_acl.c                                |   8 +-\n>  app/test/test_acl.h                                | 122 ++++----\n>  app/test/test_cmdline_etheraddr.c                  |  16 +-\n>  app/test/test_efd.c                                |  20 +-\n>  app/test/test_event_eth_rx_adapter.c               |   2 +-\n>  app/test/test_event_eth_tx_adapter.c               |   2 +-\n>  app/test/test_flow_classify.c                      |  70 +++--\n>  app/test/test_hash.c                               |  20 +-\n>  app/test/test_ipsec.c                              |  13 +-\n>  app/test/test_link_bonding.c                       | 342 ++++++++++++---------\n>  app/test/test_link_bonding_mode4.c                 | 124 ++++----\n>  app/test/test_link_bonding_rssconf.c               |   6 +-\n>  app/test/test_lpm.c                                |  76 ++---\n>  app/test/test_lpm_perf.c                           |  10 +-\n>  app/test/test_member.c                             |  20 +-\n>  app/test/test_pmd_perf.c                           |  20 +-\n>  app/test/test_sched.c                              |  24 +-\n>  app/test/test_table_acl.c                          |   8 +-\n>  app/test/test_thash.c                              |  12 +-\n>  app/test/virtual_pmd.c                             |   6 +-\n>  app/test/virtual_pmd.h                             |   2 +-\n>  doc/guides/nics/kni.rst                            |   2 +-\n>  doc/guides/prog_guide/bbdev.rst                    |   6 +-\n>  .../prog_guide/packet_classif_access_ctrl.rst      |  18 +-\n>  doc/guides/prog_guide/rte_flow.rst                 |   4 +-\n>  doc/guides/rel_notes/deprecation.rst               |   4 -\n>  doc/guides/rel_notes/release_19_08.rst             |   3 +\n>  doc/guides/sample_app_ug/flow_classify.rst         |  28 +-\n>  doc/guides/sample_app_ug/flow_filtering.rst        |   6 +-\n>  doc/guides/sample_app_ug/ip_frag.rst               |  16 +-\n>  doc/guides/sample_app_ug/ip_reassembly.rst         |  16 +-\n>  doc/guides/sample_app_ug/ipv4_multicast.rst        |  16 +-\n>  doc/guides/sample_app_ug/l2_forward_job_stats.rst  |   6 +-\n>  .../sample_app_ug/l2_forward_real_virtual.rst      |   6 +-\n>  doc/guides/sample_app_ug/l3_forward.rst            |  12 +-\n>  doc/guides/sample_app_ug/link_status_intr.rst      |   6 +-\n>  doc/guides/sample_app_ug/ptpclient.rst             |   6 +-\n>  doc/guides/sample_app_ug/rxtx_callbacks.rst        |   2 +-\n>  doc/guides/sample_app_ug/server_node_efd.rst       |  12 +-\n>  doc/guides/sample_app_ug/skeleton.rst              |   4 +-\n>  doc/guides/sample_app_ug/vmdq_dcb_forwarding.rst   |   4 +-\n>  drivers/bus/dpaa/include/compat.h                  |   2 +\n>  drivers/bus/dpaa/include/fman.h                    |   2 +-\n>  drivers/bus/dpaa/include/netcfg.h                  |   4 +-\n>  drivers/net/af_packet/rte_eth_af_packet.c          |   2 +-\n>  drivers/net/af_xdp/rte_eth_af_xdp.c                |   8 +-\n>  drivers/net/ark/ark_ethdev.c                       |  19 +-\n>  drivers/net/ark/ark_ext.h                          |   4 +-\n>  drivers/net/ark/ark_global.h                       |   5 +-\n>  drivers/net/atlantic/atl_ethdev.c                  |  27 +-\n>  drivers/net/atlantic/hw_atl/hw_atl_utils.c         |   8 +-\n>  drivers/net/atlantic/hw_atl/hw_atl_utils_fw2x.c    |   4 +-\n>  drivers/net/avp/avp_ethdev.c                       |  21 +-\n>  drivers/net/avp/rte_avp_common.h                   |   2 +-\n>  drivers/net/axgbe/axgbe_dev.c                      |   4 +-\n>  drivers/net/axgbe/axgbe_ethdev.c                   |  10 +-\n>  drivers/net/axgbe/axgbe_ethdev.h                   |   4 +-\n>  drivers/net/axgbe/axgbe_rxtx.c                     |   2 +-\n>  drivers/net/bnx2x/bnx2x.c                          |  16 +-\n>  drivers/net/bnx2x/bnx2x_ethdev.c                   |   5 +-\n>  drivers/net/bnx2x/bnx2x_ethdev.h                   |   3 +-\n>  drivers/net/bnx2x/bnx2x_vfpf.c                     |   8 +-\n>  drivers/net/bnx2x/bnx2x_vfpf.h                     |   2 +-\n>  drivers/net/bnx2x/ecore_sp.h                       |   2 +-\n>  drivers/net/bnxt/bnxt.h                            |   4 +-\n>  drivers/net/bnxt/bnxt_ethdev.c                     |  80 ++---\n>  drivers/net/bnxt/bnxt_filter.c                     |   4 +-\n>  drivers/net/bnxt/bnxt_filter.h                     |   8 +-\n>  drivers/net/bnxt/bnxt_flow.c                       |  27 +-\n>  drivers/net/bnxt/bnxt_hwrm.c                       |  41 +--\n>  drivers/net/bnxt/bnxt_hwrm.h                       |   2 +-\n>  drivers/net/bnxt/bnxt_ring.c                       |   8 +-\n>  drivers/net/bnxt/bnxt_rxq.c                        |   2 +-\n>  drivers/net/bnxt/bnxt_rxr.c                        |   4 +-\n>  drivers/net/bnxt/bnxt_vnic.c                       |   2 +-\n>  drivers/net/bnxt/rte_pmd_bnxt.c                    |  14 +-\n>  drivers/net/bnxt/rte_pmd_bnxt.h                    |   4 +-\n>  drivers/net/bonding/rte_eth_bond.h                 |   2 +-\n>  drivers/net/bonding/rte_eth_bond_8023ad.c          |  30 +-\n>  drivers/net/bonding/rte_eth_bond_8023ad.h          |  10 +-\n>  drivers/net/bonding/rte_eth_bond_8023ad_private.h  |   2 +-\n>  drivers/net/bonding/rte_eth_bond_alb.c             |  98 +++---\n>  drivers/net/bonding/rte_eth_bond_alb.h             |  10 +-\n>  drivers/net/bonding/rte_eth_bond_api.c             |   2 +-\n>  drivers/net/bonding/rte_eth_bond_args.c            |   2 +-\n>  drivers/net/bonding/rte_eth_bond_pmd.c             | 203 ++++++------\n>  drivers/net/bonding/rte_eth_bond_private.h         |   8 +-\n>  drivers/net/cxgbe/base/adapter.h                   |   2 +-\n>  drivers/net/cxgbe/cxgbe.h                          |   5 +-\n>  drivers/net/cxgbe/cxgbe_compat.h                   |   1 +\n>  drivers/net/cxgbe/cxgbe_ethdev.c                   |  14 +-\n>  drivers/net/cxgbe/cxgbe_filter.h                   |   2 +-\n>  drivers/net/cxgbe/cxgbe_flow.c                     |  10 +-\n>  drivers/net/cxgbe/cxgbe_main.c                     |   4 +-\n>  drivers/net/cxgbe/cxgbe_pfvf.h                     |   2 +-\n>  drivers/net/cxgbe/cxgbevf_main.c                   |   2 +-\n>  drivers/net/cxgbe/l2t.c                            |   8 +-\n>  drivers/net/cxgbe/l2t.h                            |   2 +-\n>  drivers/net/cxgbe/mps_tcam.c                       |  14 +-\n>  drivers/net/cxgbe/mps_tcam.h                       |   4 +-\n>  drivers/net/cxgbe/sge.c                            |   9 +-\n>  drivers/net/dpaa/dpaa_ethdev.c                     |  20 +-\n>  drivers/net/dpaa/dpaa_rxtx.c                       |  23 +-\n>  drivers/net/dpaa2/dpaa2_ethdev.c                   |  37 +--\n>  drivers/net/dpaa2/dpaa2_flow.c                     |  18 +-\n>  drivers/net/e1000/e1000_ethdev.h                   |   5 +-\n>  drivers/net/e1000/em_ethdev.c                      |  39 +--\n>  drivers/net/e1000/em_rxtx.c                        |  24 +-\n>  drivers/net/e1000/igb_ethdev.c                     |  76 ++---\n>  drivers/net/e1000/igb_flow.c                       |  12 +-\n>  drivers/net/e1000/igb_pf.c                         |  17 +-\n>  drivers/net/e1000/igb_rxtx.c                       |  23 +-\n>  drivers/net/ena/ena_ethdev.c                       |  17 +-\n>  drivers/net/ena/ena_ethdev.h                       |   2 +-\n>  drivers/net/enetc/base/enetc_hw.h                  |   4 +-\n>  drivers/net/enetc/enetc_ethdev.c                   |  21 +-\n>  drivers/net/enic/enic.h                            |   4 +-\n>  drivers/net/enic/enic_clsf.c                       |  40 +--\n>  drivers/net/enic/enic_ethdev.c                     |  29 +-\n>  drivers/net/enic/enic_flow.c                       | 114 +++----\n>  drivers/net/enic/enic_main.c                       |   4 +-\n>  drivers/net/enic/enic_res.c                        |   5 +-\n>  drivers/net/failsafe/failsafe.c                    |   8 +-\n>  drivers/net/failsafe/failsafe_args.c               |   4 +-\n>  drivers/net/failsafe/failsafe_ether.c              |   7 +-\n>  drivers/net/failsafe/failsafe_ops.c                |   6 +-\n>  drivers/net/failsafe/failsafe_private.h            |   4 +-\n>  drivers/net/fm10k/fm10k.h                          |   2 +-\n>  drivers/net/fm10k/fm10k_ethdev.c                   |  18 +-\n>  drivers/net/i40e/i40e_ethdev.c                     | 143 +++++----\n>  drivers/net/i40e/i40e_ethdev.h                     |  23 +-\n>  drivers/net/i40e/i40e_ethdev_vf.c                  |  68 ++--\n>  drivers/net/i40e/i40e_fdir.c                       | 127 ++++----\n>  drivers/net/i40e/i40e_flow.c                       |  58 ++--\n>  drivers/net/i40e/i40e_pf.c                         |  18 +-\n>  drivers/net/i40e/i40e_rxtx.c                       |  28 +-\n>  drivers/net/i40e/i40e_vf_representor.c             |   2 +-\n>  drivers/net/i40e/rte_pmd_i40e.c                    |  31 +-\n>  drivers/net/i40e/rte_pmd_i40e.h                    |   8 +-\n>  drivers/net/iavf/iavf.h                            |   4 +-\n>  drivers/net/iavf/iavf_ethdev.c                     |  53 ++--\n>  drivers/net/iavf/iavf_rxtx.c                       |  14 +-\n>  drivers/net/iavf/iavf_vchnl.c                      |   8 +-\n>  drivers/net/ice/ice_ethdev.c                       |  64 ++--\n>  drivers/net/ice/ice_ethdev.h                       |   6 +-\n>  drivers/net/ice/ice_rxtx.c                         |  28 +-\n>  drivers/net/ipn3ke/ipn3ke_ethdev.h                 |   6 +-\n>  drivers/net/ipn3ke/ipn3ke_flow.c                   |   4 +-\n>  drivers/net/ipn3ke/ipn3ke_representor.c            |  21 +-\n>  drivers/net/ixgbe/ixgbe_ethdev.c                   | 107 ++++---\n>  drivers/net/ixgbe/ixgbe_ethdev.h                   |   4 +-\n>  drivers/net/ixgbe/ixgbe_flow.c                     |  22 +-\n>  drivers/net/ixgbe/ixgbe_pf.c                       |  16 +-\n>  drivers/net/ixgbe/ixgbe_rxtx.c                     |  18 +-\n>  drivers/net/ixgbe/ixgbe_vf_representor.c           |   4 +-\n>  drivers/net/ixgbe/rte_pmd_ixgbe.c                  |  11 +-\n>  drivers/net/ixgbe/rte_pmd_ixgbe.h                  |   2 +-\n>  drivers/net/kni/rte_eth_kni.c                      |   6 +-\n>  drivers/net/liquidio/lio_ethdev.c                  |  23 +-\n>  drivers/net/mlx4/mlx4.c                            |   4 +-\n>  drivers/net/mlx4/mlx4.h                            |  10 +-\n>  drivers/net/mlx4/mlx4_ethdev.c                     |  12 +-\n>  drivers/net/mlx4/mlx4_flow.c                       |  16 +-\n>  drivers/net/mlx4/mlx4_rxtx.c                       |   2 +-\n>  drivers/net/mlx5/mlx5.c                            |   4 +-\n>  drivers/net/mlx5/mlx5.h                            |  15 +-\n>  drivers/net/mlx5/mlx5_flow.c                       |  22 +-\n>  drivers/net/mlx5/mlx5_flow_dv.c                    |  44 +--\n>  drivers/net/mlx5/mlx5_flow_tcf.c                   |  66 ++--\n>  drivers/net/mlx5/mlx5_flow_verbs.c                 |  30 +-\n>  drivers/net/mlx5/mlx5_mac.c                        |  18 +-\n>  drivers/net/mlx5/mlx5_nl.c                         |  28 +-\n>  drivers/net/mlx5/mlx5_rxtx.c                       |   6 +-\n>  drivers/net/mlx5/mlx5_rxtx.h                       |   2 +-\n>  drivers/net/mlx5/mlx5_rxtx_vec_neon.h              |   8 +-\n>  drivers/net/mlx5/mlx5_rxtx_vec_sse.h               |  10 +-\n>  drivers/net/mlx5/mlx5_trigger.c                    |   6 +-\n>  drivers/net/mvneta/mvneta_ethdev.c                 |  22 +-\n>  drivers/net/mvneta/mvneta_ethdev.h                 |   6 +-\n>  drivers/net/mvpp2/mrvl_ethdev.c                    |  22 +-\n>  drivers/net/mvpp2/mrvl_ethdev.h                    |   6 +-\n>  drivers/net/mvpp2/mrvl_flow.c                      |   4 +-\n>  drivers/net/netvsc/hn_ethdev.c                     |   4 +-\n>  drivers/net/netvsc/hn_nvs.c                        |   2 +-\n>  drivers/net/netvsc/hn_rndis.c                      |   2 +-\n>  drivers/net/netvsc/hn_rxtx.c                       |  12 +-\n>  drivers/net/netvsc/hn_var.h                        |   4 +-\n>  drivers/net/netvsc/hn_vf.c                         |   8 +-\n>  drivers/net/nfb/nfb_ethdev.c                       |  16 +-\n>  drivers/net/nfp/nfp_net.c                          |  22 +-\n>  drivers/net/nfp/nfp_net_pmd.h                      |   2 +-\n>  drivers/net/null/rte_eth_null.c                    |   6 +-\n>  drivers/net/octeontx/octeontx_ethdev.c             |   9 +-\n>  drivers/net/octeontx/octeontx_ethdev.h             |   2 +-\n>  drivers/net/pcap/rte_eth_pcap.c                    |  22 +-\n>  drivers/net/qede/base/bcm_osal.h                   |   4 +-\n>  drivers/net/qede/qede_ethdev.c                     |  71 +++--\n>  drivers/net/qede/qede_ethdev.h                     |   6 +-\n>  drivers/net/qede/qede_filter.c                     |  68 ++--\n>  drivers/net/qede/qede_if.h                         |   4 +-\n>  drivers/net/qede/qede_main.c                       |   6 +-\n>  drivers/net/qede/qede_rxtx.c                       |  34 +-\n>  drivers/net/qede/qede_rxtx.h                       |   2 +-\n>  drivers/net/ring/rte_eth_ring.c                    |   4 +-\n>  drivers/net/sfc/sfc.h                              |   2 +-\n>  drivers/net/sfc/sfc_ef10_tx.c                      |   4 +-\n>  drivers/net/sfc/sfc_ethdev.c                       |  24 +-\n>  drivers/net/sfc/sfc_flow.c                         |  12 +-\n>  drivers/net/sfc/sfc_port.c                         |   8 +-\n>  drivers/net/sfc/sfc_tso.c                          |   4 +-\n>  drivers/net/sfc/sfc_tso.h                          |   4 +-\n>  drivers/net/softnic/parser.c                       |  18 +-\n>  drivers/net/softnic/parser.h                       |   2 +-\n>  drivers/net/softnic/rte_eth_softnic.c              |   2 +-\n>  drivers/net/softnic/rte_eth_softnic_flow.c         |   4 +-\n>  drivers/net/softnic/rte_eth_softnic_pipeline.c     |  40 +--\n>  drivers/net/szedata2/rte_eth_szedata2.c            |   8 +-\n>  drivers/net/tap/rte_eth_tap.c                      |  68 ++--\n>  drivers/net/tap/rte_eth_tap.h                      |   4 +-\n>  drivers/net/tap/tap_bpf_program.c                  |  14 +-\n>  drivers/net/tap/tap_flow.c                         |  16 +-\n>  drivers/net/thunderx/base/nicvf_plat.h             |   5 +-\n>  drivers/net/thunderx/nicvf_ethdev.c                |  19 +-\n>  drivers/net/thunderx/nicvf_struct.h                |   2 +-\n>  drivers/net/vdev_netvsc/vdev_netvsc.c              |  16 +-\n>  drivers/net/vhost/rte_eth_vhost.c                  |  12 +-\n>  drivers/net/virtio/virtio_ethdev.c                 |  78 ++---\n>  drivers/net/virtio/virtio_pci.h                    |   4 +-\n>  drivers/net/virtio/virtio_rxtx.c                   |  33 +-\n>  drivers/net/virtio/virtio_user/vhost_kernel_tap.c  |   2 +-\n>  drivers/net/virtio/virtio_user/virtio_user_dev.c   |   6 +-\n>  drivers/net/virtio/virtio_user/virtio_user_dev.h   |   2 +-\n>  drivers/net/virtio/virtio_user_ethdev.c            |   8 +-\n>  drivers/net/virtio/virtqueue.h                     |   2 +-\n>  drivers/net/vmxnet3/vmxnet3_ethdev.c               |  12 +-\n>  drivers/net/vmxnet3/vmxnet3_ethdev.h               |   2 +-\n>  drivers/net/vmxnet3/vmxnet3_rxtx.c                 |  47 +--\n>  examples/bbdev_app/main.c                          |  41 +--\n>  examples/bond/main.c                               |  83 ++---\n>  examples/distributor/main.c                        |   4 +-\n>  examples/ethtool/ethtool-app/ethapp.c              |   8 +-\n>  examples/ethtool/ethtool-app/main.c                |  10 +-\n>  examples/ethtool/lib/rte_ethtool.c                 |   8 +-\n>  examples/ethtool/lib/rte_ethtool.h                 |   7 +-\n>  examples/eventdev_pipeline/main.c                  |   4 +-\n>  examples/eventdev_pipeline/pipeline_common.h       |  10 +-\n>  examples/flow_classify/flow_classify.c             |  30 +-\n>  examples/flow_filtering/main.c                     |  10 +-\n>  examples/ip_fragmentation/main.c                   |  69 +++--\n>  examples/ip_pipeline/cli.c                         |   4 +-\n>  examples/ip_pipeline/kni.c                         |   2 +-\n>  examples/ip_pipeline/parser.c                      |  18 +-\n>  examples/ip_pipeline/parser.h                      |   2 +-\n>  examples/ip_pipeline/pipeline.c                    |  40 +--\n>  examples/ip_reassembly/main.c                      |  51 +--\n>  examples/ipsec-secgw/esp.c                         |  47 +--\n>  examples/ipsec-secgw/ipsec-secgw.c                 |  43 +--\n>  examples/ipsec-secgw/ipsec.h                       |   2 +-\n>  examples/ipsec-secgw/parser.c                      |   4 +-\n>  examples/ipsec-secgw/sa.c                          |  16 +-\n>  examples/ipv4_multicast/main.c                     |  60 ++--\n>  examples/kni/main.c                                |  14 +-\n>  examples/l2fwd-cat/l2fwd-cat.c                     |   4 +-\n>  examples/l2fwd-crypto/main.c                       |  26 +-\n>  examples/l2fwd-jobstats/main.c                     |   8 +-\n>  examples/l2fwd-keepalive/main.c                    |   8 +-\n>  examples/l2fwd/main.c                              |   8 +-\n>  examples/l3fwd-acl/main.c                          | 106 ++++---\n>  examples/l3fwd-power/main.c                        | 102 +++---\n>  examples/l3fwd-vf/main.c                           |  68 ++--\n>  examples/l3fwd/l3fwd.h                             |   8 +-\n>  examples/l3fwd/l3fwd_altivec.h                     |  26 +-\n>  examples/l3fwd/l3fwd_common.h                      |   4 +-\n>  examples/l3fwd/l3fwd_em.c                          |  46 +--\n>  examples/l3fwd/l3fwd_em.h                          |  22 +-\n>  examples/l3fwd/l3fwd_em_hlm.h                      |  19 +-\n>  examples/l3fwd/l3fwd_em_hlm_neon.h                 |  20 +-\n>  examples/l3fwd/l3fwd_em_hlm_sse.h                  |  16 +-\n>  examples/l3fwd/l3fwd_em_sequential.h               |  19 +-\n>  examples/l3fwd/l3fwd_lpm.c                         |  50 +--\n>  examples/l3fwd/l3fwd_lpm.h                         |  22 +-\n>  examples/l3fwd/l3fwd_lpm_altivec.h                 |  20 +-\n>  examples/l3fwd/l3fwd_lpm_neon.h                    |  30 +-\n>  examples/l3fwd/l3fwd_lpm_sse.h                     |  20 +-\n>  examples/l3fwd/l3fwd_neon.h                        |  26 +-\n>  examples/l3fwd/l3fwd_sse.h                         |  26 +-\n>  examples/l3fwd/main.c                              |  20 +-\n>  examples/link_status_interrupt/main.c              |   8 +-\n>  examples/load_balancer/runtime.c                   |   8 +-\n>  .../client_server_mp/mp_server/main.c              |   2 +-\n>  examples/packet_ordering/main.c                    |   2 +-\n>  examples/performance-thread/l3fwd-thread/main.c    | 337 ++++++++++----------\n>  examples/ptpclient/ptpclient.c                     |  32 +-\n>  examples/qos_meter/main.c                          |   5 +-\n>  examples/qos_sched/init.c                          |   2 +-\n>  examples/quota_watermark/qw/main.c                 |   8 +-\n>  examples/rxtx_callbacks/main.c                     |   4 +-\n>  examples/server_node_efd/node/node.c               |   6 +-\n>  examples/server_node_efd/server/main.c             |   8 +-\n>  examples/skeleton/basicfwd.c                       |   4 +-\n>  examples/tep_termination/main.c                    |   2 +-\n>  examples/tep_termination/main.h                    |   2 +-\n>  examples/tep_termination/vxlan.c                   | 115 +++----\n>  examples/tep_termination/vxlan.h                   |   8 +-\n>  examples/tep_termination/vxlan_setup.c             |  32 +-\n>  examples/tep_termination/vxlan_setup.h             |   2 +-\n>  examples/vhost/main.c                              |  42 +--\n>  examples/vhost/main.h                              |   2 +-\n>  examples/vm_power_manager/channel_monitor.c        |  12 +-\n>  .../guest_cli/vm_power_cli_guest.c                 |   2 +-\n>  examples/vm_power_manager/main.c                   |   6 +-\n>  examples/vmdq/main.c                               |  12 +-\n>  examples/vmdq_dcb/main.c                           |  12 +-\n>  lib/librte_ethdev/rte_class_eth.c                  |   4 +-\n>  lib/librte_ethdev/rte_eth_ctrl.h                   |  12 +-\n>  lib/librte_ethdev/rte_ethdev.c                     |  59 ++--\n>  lib/librte_ethdev/rte_ethdev.h                     |  15 +-\n>  lib/librte_ethdev/rte_ethdev_core.h                |  12 +-\n>  lib/librte_ethdev/rte_flow.h                       |  34 +-\n>  lib/librte_eventdev/rte_event_eth_rx_adapter.c     |  33 +-\n>  lib/librte_gro/gro_tcp4.c                          |  26 +-\n>  lib/librte_gro/gro_tcp4.h                          |  22 +-\n>  lib/librte_gro/gro_vxlan_tcp4.c                    |  66 ++--\n>  lib/librte_gro/gro_vxlan_tcp4.h                    |   6 +-\n>  lib/librte_gso/gso_common.h                        |  16 +-\n>  lib/librte_gso/gso_tcp4.c                          |  12 +-\n>  lib/librte_gso/gso_tunnel_tcp4.c                   |  14 +-\n>  lib/librte_gso/gso_udp4.c                          |  10 +-\n>  lib/librte_gso/rte_gso.h                           |   8 +-\n>  lib/librte_hash/rte_thash.h                        |   3 +-\n>  lib/librte_ip_frag/rte_ip_frag.h                   |  13 +-\n>  lib/librte_ip_frag/rte_ipv4_fragmentation.c        |  42 +--\n>  lib/librte_ip_frag/rte_ipv4_reassembly.c           |  14 +-\n>  lib/librte_ip_frag/rte_ipv6_fragmentation.c        |  28 +-\n>  lib/librte_ip_frag/rte_ipv6_reassembly.c           |   6 +-\n>  lib/librte_ipsec/crypto.h                          |   2 +-\n>  lib/librte_ipsec/esp_inb.c                         |  10 +-\n>  lib/librte_ipsec/esp_outb.c                        |   8 +-\n>  lib/librte_ipsec/iph.h                             |   8 +-\n>  lib/librte_ipsec/sa.c                              |  10 +-\n>  lib/librte_kni/rte_kni.c                           |   4 +-\n>  lib/librte_kni/rte_kni.h                           |   2 +-\n>  lib/librte_net/rte_arp.c                           |  33 +-\n>  lib/librte_net/rte_arp.h                           |  36 +--\n>  lib/librte_net/rte_esp.h                           |   2 +-\n>  lib/librte_net/rte_ether.h                         | 189 ++++++------\n>  lib/librte_net/rte_gre.h                           |   2 +-\n>  lib/librte_net/rte_icmp.h                          |   6 +-\n>  lib/librte_net/rte_ip.h                            |  75 ++---\n>  lib/librte_net/rte_net.c                           |  94 +++---\n>  lib/librte_net/rte_net.h                           |  28 +-\n>  lib/librte_net/rte_sctp.h                          |   2 +-\n>  lib/librte_net/rte_tcp.h                           |   2 +-\n>  lib/librte_net/rte_udp.h                           |   2 +-\n>  lib/librte_pipeline/rte_table_action.c             | 242 ++++++++-------\n>  lib/librte_pipeline/rte_table_action.h             |   4 +-\n>  lib/librte_port/rte_port_ras.c                     |  10 +-\n>  lib/librte_port/rte_port_source_sink.c             |   6 +-\n>  lib/librte_vhost/vhost.h                           |   2 +-\n>  lib/librte_vhost/virtio_net.c                      |  43 +--\n>  385 files changed, 4563 insertions(+), 4234 deletions(-)\n> \n\nLooks good\n\nReviewed-by: Stephen Hemminger <stephen@networkplumber.org>",
        "headers": {
            "Subject": "Re: [dpdk-dev] [PATCH 00/15] prefix network structures",
            "List-Post": "<mailto:dev@dpdk.org>",
            "X-Original-To": "patchwork@dpdk.org",
            "Message-ID": "<20190521092310.44d1538a@hermes.lan>",
            "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n\t<mailto:dev-request@dpdk.org?subject=subscribe>",
            "From": "Stephen Hemminger <stephen@networkplumber.org>",
            "Return-Path": "<dev-bounces@dpdk.org>",
            "X-BeenThere": "dev@dpdk.org",
            "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20161025;\n\th=x-gm-message-state:date:from:to:cc:subject:message-id:in-reply-to\n\t:references:mime-version:content-transfer-encoding;\n\tbh=WoMg7yz94E8vK1LQwDKWonsJR+sO1HhNDBNZmoEywBA=;\n\tb=KEQY3C34njLxu2uH21kApNwrdPLDHd8yXOV4J8qvCAv1P1XbzCb3kk+d90ZVMDfCyT\n\tA7mYZi4OB/QnhXBztOsz/jKgGJhHUm1R77rdn8DGY8OlTQOEkwW6tkxnO0Xsutsc5Vu5\n\txqsIuwZyqbEh1xw6AQjlENA3uWc5zFINLOXXF02lCxG3TJ0EAmZKn/1MJgUWjIuYLVoX\n\taE5Q7CCecVfhZCUGy1veT34bbd9lN46ALJ3hwgDm7+HyHDfAQa0gsW2MnFldXrZGfXLl\n\tbUK4hGXqiinEqUAPtlpBGnDwKMapIloNbbovoo1h2onsODj9OpHA++xIqVH7/8oIQPxi\n\tCElg==",
            "X-Gm-Message-State": "APjAAAWvNRheaERr/b5MD67rBSDZN/zk/p4LOSfqKMW+k1L8IIZUTVfi\n\txTgpq3oSxAuJ4VeGteQpThKsUg==",
            "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=networkplumber-org.20150623.gappssmtp.com; s=20150623;\n\th=date:from:to:cc:subject:message-id:in-reply-to:references\n\t:mime-version:content-transfer-encoding;\n\tbh=WoMg7yz94E8vK1LQwDKWonsJR+sO1HhNDBNZmoEywBA=;\n\tb=RVqZpt9QjXcjf3PFcZrog6oQLJ6oB1RJ7VGZ7ARVkKMmPNXX2+YgQTIbJCDEX98ZDD\n\tt7LVMzY3Ub4vUqkzC0rjCpmGSWIFqWoX79ea6cfMobaFNyhRP9nhZwtXXCS0sPnNaZAy\n\tGOF5c1A3qK8PPdIYa/5kGgdNIxmsIxe0wVGFjiCnoJWShMqIyU0UjdqHX3sbwKbQCCYP\n\tt8AxvUf5UpZMqZ3IYbk5dQOVwV4gEFLvSdXSP91TkSK3AMNWY8tQSvD97hgnHCS9DOGh\n\t8QVyDQlH9QLY65zxyINbHwQGEsNYsXhZIXBWtrQe7pu3TzR81FszAvU+KD/xVtFN1+TE\n\taSjw==",
            "Date": "Tue, 21 May 2019 09:23:10 -0700",
            "In-Reply-To": "<20190521161315.25500-1-olivier.matz@6wind.com>",
            "MIME-Version": "1.0",
            "Errors-To": "dev-bounces@dpdk.org",
            "References": "<20190410083218.17531-1-olivier.matz@6wind.com>\n\t<20190521161315.25500-1-olivier.matz@6wind.com>",
            "Delivered-To": "patchwork@dpdk.org",
            "Precedence": "list",
            "Received": [
                "from [92.243.14.124] (localhost [127.0.0.1])\n\tby dpdk.org (Postfix) with ESMTP id 690944CA7;\n\tTue, 21 May 2019 18:23:21 +0200 (CEST)",
                "from mail-pl1-f193.google.com (mail-pl1-f193.google.com\n\t[209.85.214.193]) by dpdk.org (Postfix) with ESMTP id 97DDF4C9D\n\tfor <dev@dpdk.org>; Tue, 21 May 2019 18:23:19 +0200 (CEST)",
                "by mail-pl1-f193.google.com with SMTP id gn7so4518964plb.10\n\tfor <dev@dpdk.org>; Tue, 21 May 2019 09:23:19 -0700 (PDT)",
                "from hermes.lan (204-195-22-127.wavecable.com. [204.195.22.127])\n\tby smtp.gmail.com with ESMTPSA id\n\to20sm30415686pgj.70.2019.05.21.09.23.17\n\t(version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256);\n\tTue, 21 May 2019 09:23:18 -0700 (PDT)"
            ],
            "List-Archive": "<http://mails.dpdk.org/archives/dev/>",
            "List-Help": "<mailto:dev-request@dpdk.org?subject=help>",
            "List-Id": "DPDK patches and discussions <dev.dpdk.org>",
            "To": "Olivier Matz <olivier.matz@6wind.com>",
            "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n\t<mailto:dev-request@dpdk.org?subject=unsubscribe>",
            "Sender": "\"dev\" <dev-bounces@dpdk.org>",
            "Content-Type": "text/plain; charset=US-ASCII",
            "X-Received": "by 2002:a17:902:7488:: with SMTP id\n\th8mr48910144pll.315.1558455798571; \n\tTue, 21 May 2019 09:23:18 -0700 (PDT)",
            "X-Mailman-Version": "2.1.15",
            "Cc": "dev@dpdk.org, ferruh.yigit@intel.com",
            "Content-Transfer-Encoding": "7bit",
            "X-Google-Smtp-Source": "APXvYqxt27S+axQS3YdU6I3859PFEaQH8y71SjwILTNbUWIITlJF4fQkJ5PVzSE9QFX3HbyQM4VFZg=="
        }
    },
    {
        "id": 96515,
        "web_url": "http://patches.dpdk.org/comment/96515/",
        "msgid": "<20190529144602.5tpfb5p3yasz3tvl@platinum>",
        "list_archive_url": "https://inbox.dpdk.org/dev/20190529144602.5tpfb5p3yasz3tvl@platinum",
        "date": "2019-05-29T14:46:02",
        "subject": "Re: [dpdk-dev] [PATCH 00/15] prefix network structures",
        "submitter": {
            "id": 8,
            "url": "http://patches.dpdk.org/api/people/8/?format=api",
            "name": "Olivier Matz",
            "email": "olivier.matz@6wind.com"
        },
        "content": "On Wed, May 29, 2019 at 09:59:11AM +0200, David Marchand wrote:\n> On Fri, May 24, 2019 at 1:38 PM Ferruh Yigit <ferruh.yigit@intel.com> wrote:\n> \n> > On 5/21/2019 5:13 PM, Olivier Matz wrote:\n> > > The rte_net headers conflict with the libc headers, because\n> > > some definitions are duplicated, sometimes with few differences.\n> > >\n> > > This patchset adds the rte_ (or RTE_) prefix to all structures, functions\n> > > and defines in rte_net library. This is a big changeset, that will\n> > > break the API of many functions, but not the ABI.\n> > >\n> > > This was discussed in [1], and requested by the techboard [2].\n> > >\n> > > patch-v1:\n> > > * rease on top of v19.05\n> > > * remove uneeded renames in drivers/net/bonding/rte_eth_bond_pmd.c\n> > >   and app/test-pmd/icmpecho.c (arp-related variables)\n> > > * do not modify base drivers, except cxgbe, thunderx, enetc, qede:\n> > >   only files that already contain dpdk definitions are modified.\n> > > * fix checkpatch issues when it does not impact the code style too\n> > >   much. Big warnings remain about the RTE_IPv4() macros because\n> > >   arguments are separated by ',' instead of ', '.\n> > > * add a release note patch\n> > > * tested compilation on x86_64-linux and x86_64-freebsd.\n> > >\n> > > rfc-v2:\n> > > * rebase on top of v19.05-rc1\n> > >\n> > >\n> > > [1] http://mails.dpdk.org/archives/dev/2018-January/087384.html\n> > > [2] http://mails.dpdk.org/archives/dev/2019-February/125033.html\n> > >\n> > >\n> > > Olivier Matz (15):\n> > >   net: add rte prefix to arp structures\n> > >   net: add rte prefix to arp defines\n> > >   net: add rte prefix to ether structures\n> > >   net: add rte prefix to ether functions\n> > >   net: add rte prefix to ether defines\n> > >   net: add rte prefix to esp structure\n> > >   net: add rte prefix to gre structure\n> > >   net: add rte prefix to icmp structure\n> > >   net: add rte prefix to icmp defines\n> > >   net: add rte prefix to ip structure\n> > >   net: add rte prefix to ip defines\n> > >   net: add rte prefix to sctp structure\n> > >   net: add rte prefix to tcp structure\n> > >   net: add rte prefix to udp structure\n> > >   doc: announce network api change\n> >\n> > Reviewed-by: Stephen Hemminger <stephen@networkplumber.org>\n> > Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com>\n> >\n> > For series,\n> > Reviewed-by: Ferruh Yigit <ferruh.yigit@intel.com>\n> >\n> > Series applied to dpdk-next-net/master, thanks.\n> >\n> \n> Sorry, late to the party...\n> \n> Since we change those defines, we might as well avoid these warnings:\n> CHECK:CAMELCASE: Avoid CamelCase: <RTE_ETHER_TYPE_IPv4>\n> CHECK:CAMELCASE: Avoid CamelCase: <RTE_ETHER_TYPE_IPv6>\n> \n> I can send a patch.\n\nThanks.\n\nBy the way, here is below a script that can be used to ease the\nporting of an application. It includes modifications proposed by\nDavid [1].\n\nIt is probably not 100% reliable, but it will do most of the job.\n\n\nOlivier\n\n[1] https://mails.dpdk.org/archives/dev/2019-May/133060.html\n\n-----------------------\n#!/bin/bash\n\n# Prefix network structure/defines/functions with \"rte_\".\n\nset -e\n\nif [ $# = 0 ]; then\n\techo 'usage: $0 <files>'\n\texit 1\nfi\n\nfiles=\"$@\"\n\n# $1: pattern\n# $2: replacement\nreplace()\n{\n\tlocal pattern=\"$1\"\n\tlocal replace=\"$2\"\n\n\tsed -i -e \"s,${pattern},${replace},g\" ${files}\n}\n\n# $*: function names\nreplace_function()\n{\n\tfor i in $*; do\n\t\treplace \"\\<$i\\>(\" \"rte_$i(\"\n\tdone\n}\n\n# $*: define names\nreplace_define()\n{\n\tfor i in $*; do\n\t\tlocal pattern\n\t\tcase \"$i\" in\n\t\t\t*'(')\n\t\t\t\tpattern=\"\\<${i%(}\\>(\"\n\t\t\t\t;;\n\t\t\t*)\n\t\t\t\tpattern=\"\\<${i}\\>\"\n\t\t\t\t;;\n\t\tesac\n\t\treplace \"$pattern\" \"RTE_${i^^}\"\n\tdone\n}\n\n# $*: struct names\nreplace_struct()\n{\n\tfor i in $*; do\n\t\treplace \"struct\\([ \t][ \t]*\\)\\<$i\\>\" \"struct\\1rte_$i\"\n\tdone\n}\n\nreplace arp_hrd arp_hardware\nreplace arp_pro arp_protocol\nreplace arp_hln arp_hlen\nreplace arp_pln arp_plen\nreplace arp_op arp_opcode\nreplace_struct arp_hdr arp_ipv4\nreplace_define ARP_HRD_ETHER ARP_OP_REQUEST ARP_OP_REPLY ARP_OP_REVREQUEST \\\n\t       ARP_OP_REVREPLY ARP_OP_INVREQUEST ARP_OP_INVREPLY\nreplace_struct ether_addr ether_hdr vlan_hdr vxlan_hdr vxlan_gpe_hdr\nreplace_function is_same_ether_addr is_zero_ether_addr is_unicast_ether_addr \\\n\t\t is_multicast_ether_addr is_broadcast_ether_addr \\\n\t\t is_universal_ether_addr is_local_admin_ether_addr \\\n\t\t is_valid_assigned_ether_addr eth_random_addr ether_addr_copy \\\n\t\t ether_format_addr\nreplace_define ETHER_ADDR_LEN ETHER_TYPE_LEN ETHER_CRC_LEN ETHER_HDR_LEN \\\n\t       ETHER_MIN_LEN ETHER_MAX_LEN ETHER_MTU ETHER_MAX_VLAN_FRAME_LEN \\\n\t       ETHER_MAX_VLAN_ID ETHER_MAX_JUMBO_FRAME_LEN ETHER_MIN_MTU \\\n\t       ETHER_LOCAL_ADMIN_ADDR ETHER_GROUP_ADDR ETHER_TYPE_IPv4 \\\n\t       ETHER_TYPE_IPv6 ETHER_TYPE_ARP ETHER_TYPE_VLAN ETHER_TYPE_RARP \\\n\t       ETHER_TYPE_QINQ ETHER_TYPE_ETAG ETHER_TYPE_1588 ETHER_TYPE_SLOW \\\n\t       ETHER_TYPE_TEB ETHER_TYPE_LLDP ETHER_TYPE_MPLS ETHER_TYPE_MPLSM \\\n\t       ETHER_VXLAN_HLEN ETHER_ADDR_FMT_SIZE VXLAN_GPE_TYPE_IPV4 \\\n\t       VXLAN_GPE_TYPE_IPV6 VXLAN_GPE_TYPE_ETH VXLAN_GPE_TYPE_NSH \\\n\t       VXLAN_GPE_TYPE_MPLS VXLAN_GPE_TYPE_GBP VXLAN_GPE_TYPE_VBNG \\\n\t       ETHER_VXLAN_GPE_HLEN\nreplace_struct esp_hdr\nreplace_struct gre_hdr\nreplace_struct icmp_hdr\nreplace_define IP_ICMP_ECHO_REPLY IP_ICMP_ECHO_REQUEST\nreplace_struct ipv4_hdr ipv6_hdr\nreplace_define \"IPv4(\" IPV4_MAX_PKT_LEN IPV4_HDR_IHL_MASK IPV4_IHL_MULTIPLIER \\\n\t       IPV4_HDR_DF_SHIFT IPV4_HDR_MF_SHIFT IPV4_HDR_FO_SHIFT \\\n\t       IPV4_HDR_DF_FLAG IPV4_HDR_MF_FLAG IPV4_HDR_OFFSET_MASK \\\n\t       IPV4_HDR_OFFSET_UNITS IPV4_ANY IPV4_LOOPBACK IPV4_BROADCAST \\\n\t       IPV4_ALLHOSTS_GROUP IPV4_ALLRTRS_GROUP IPV4_MAX_LOCAL_GROUP \\\n\t       IPV4_MIN_MCAST IPV4_MAX_MCAST IS_IPV4_MCAST IPV6_HDR_FL_SHIFT \\\n\t       IPV6_HDR_TC_SHIFT IPV6_HDR_FL_MASK IPV6_HDR_TC_MASK\nreplace_struct sctp_hdr\nreplace_struct tcp_hdr\nreplace_struct udp_hdr",
        "headers": {
            "Subject": "Re: [dpdk-dev] [PATCH 00/15] prefix network structures",
            "List-Post": "<mailto:dev@dpdk.org>",
            "X-Original-To": "patchwork@dpdk.org",
            "Message-ID": "<20190529144602.5tpfb5p3yasz3tvl@platinum>",
            "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n\t<mailto:dev-request@dpdk.org?subject=subscribe>",
            "From": "Olivier Matz <olivier.matz@6wind.com>",
            "Return-Path": "<dev-bounces@dpdk.org>",
            "X-BeenThere": "dev@dpdk.org",
            "List-Archive": "<http://mails.dpdk.org/archives/dev/>",
            "Content-Disposition": "inline",
            "User-Agent": "NeoMutt/20170113 (1.7.2)",
            "Precedence": "list",
            "In-Reply-To": "<CAJFAV8xao1y4kxgw=vZGNQfnwXOFjrXQdkoPyoMH-E9AgHvYUQ@mail.gmail.com>",
            "Cc": "Ferruh Yigit <ferruh.yigit@intel.com>, dev <dev@dpdk.org>,\n\tStephen Hemminger <stephen@networkplumber.org>,\n\tMaxime Coquelin <maxime.coquelin@redhat.com>,\n\tThomas Monjalon <thomas@monjalon.net>",
            "Errors-To": "dev-bounces@dpdk.org",
            "References": "<20190410083218.17531-1-olivier.matz@6wind.com>\n\t<20190521161315.25500-1-olivier.matz@6wind.com>\n\t<e74ea68d-cf0b-2ea8-b1c2-b71d79aedb7e@intel.com>\n\t<CAJFAV8xao1y4kxgw=vZGNQfnwXOFjrXQdkoPyoMH-E9AgHvYUQ@mail.gmail.com>",
            "Delivered-To": "patchwork@dpdk.org",
            "List-Id": "DPDK patches and discussions <dev.dpdk.org>",
            "MIME-Version": "1.0",
            "Date": "Wed, 29 May 2019 16:46:02 +0200",
            "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n\t<mailto:dev-request@dpdk.org?subject=unsubscribe>",
            "Sender": "\"dev\" <dev-bounces@dpdk.org>",
            "Content-Type": "text/plain; charset=us-ascii",
            "Received": [
                "from [92.243.14.124] (localhost [127.0.0.1])\n\tby dpdk.org (Postfix) with ESMTP id D58921B948;\n\tWed, 29 May 2019 16:46:09 +0200 (CEST)",
                "from mail.droids-corp.org (zoll.droids-corp.org [94.23.50.67])\n\tby dpdk.org (Postfix) with ESMTP id 280D41B945\n\tfor <dev@dpdk.org>; Wed, 29 May 2019 16:46:08 +0200 (CEST)",
                "from lfbn-lil-1-768-100.w81-254.abo.wanadoo.fr ([81.254.99.100]\n\thelo=droids-corp.org) by mail.droids-corp.org with esmtpsa\n\t(TLS1.0:RSA_AES_256_CBC_SHA1:256)\n\t(Exim 4.89) (envelope-from <olivier.matz@6wind.com>)\n\tid 1hVzst-0003A1-VR; Wed, 29 May 2019 16:48:57 +0200",
                "by droids-corp.org (sSMTP sendmail emulation);\n\tWed, 29 May 2019 16:46:02 +0200"
            ],
            "X-Mailman-Version": "2.1.15",
            "List-Help": "<mailto:dev-request@dpdk.org?subject=help>",
            "To": "David Marchand <david.marchand@redhat.com>"
        }
    }
]