List comments

GET /api/patches/214/comments/?order=-id
HTTP 200 OK
Allow: GET, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

[
    {
        "id": 526,
        "web_url": "https://patches.dpdk.org/comment/526/",
        "msgid": "<20140827110452.1cba26e3@urahara>",
        "date": "2014-08-27T18:04:52",
        "subject": "Re: [dpdk-dev] [RFC 06/10] virtio: use software vlan stripping",
        "submitter": {
            "id": 27,
            "url": "https://patches.dpdk.org/api/people/27/",
            "name": "Stephen Hemminger",
            "email": "stephen@networkplumber.org"
        },
        "content": "On Wed, 27 Aug 2014 05:42:09 +0000\n\"Ouyang, Changchun\" <changchun.ouyang@intel.com> wrote:\n\n> \n> > -----Original Message-----\n> > From: Stephen Hemminger [mailto:stephen@networkplumber.org]\n> > Sent: Wednesday, August 27, 2014 12:24 AM\n> > To: Ouyang, Changchun\n> > Cc: dev@dpdk.org\n> > Subject: Re: [RFC 06/10] virtio: use software vlan stripping\n> > \n> > On Tue, 26 Aug 2014 08:37:11 +0000\n> > \"Ouyang, Changchun\" <changchun.ouyang@intel.com> wrote:\n> > \n> > > Hi Stephen,\n> > >\n> > > Would you please describe the use scenario for the front end rx vlan strip\n> > and tx vlan insertion?\n> > > In our current implementation, backend will strip vlan tag for RX, and insert\n> > vlan tag for TX.\n> > >\n> > > Thanks\n> > > Changchun\n> > \n> > First, we don't have to do software VLAN strip on our backend if we do this.\n> > And this way we can always use VLAN insert on transmit. Otherwise you\n> > have to introduce special case because there is no DPDK API to determine if\n> > device does or does not do VLAN handling.\n> > \n> \n> How the virtio frontend tell backend whether it has software VLAN strip feature or not?\n> It seems no feature bit to negotiate it.\n> \n> Thanks\n> Changchun\n> \n\nAll other drivers have VLAN stripping as option under rte_eth_rxmode / hw_vlan_strip.\nThere is negotiation in DPDK, it is strictly ask for feature and either get it or an error.\nTherefore we went ahead and emulated the feature in software.",
        "headers": {
            "X-Mailman-Version": "2.1.15",
            "Date": "Wed, 27 Aug 2014 11:04:52 -0700",
            "In-Reply-To": "<F52918179C57134FAEC9EA62FA2F96251183B79C@shsmsx102.ccr.corp.intel.com>",
            "Received": [
                "from mail-pa0-f43.google.com (mail-pa0-f43.google.com\n\t[209.85.220.43]) by dpdk.org (Postfix) with ESMTP id D3D1618F\n\tfor <dev@dpdk.org>; Wed, 27 Aug 2014 20:00:53 +0200 (CEST)",
                "by mail-pa0-f43.google.com with SMTP id lf10so825815pab.2\n\tfor <dev@dpdk.org>; Wed, 27 Aug 2014 11:04:58 -0700 (PDT)",
                "from urahara (static-50-53-65-80.bvtn.or.frontiernet.net.\n\t[50.53.65.80]) by mx.google.com with ESMTPSA id\n\tah2sm3727997pad.10.2014.08.27.11.04.57 for <multiple recipients>\n\t(version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);\n\tWed, 27 Aug 2014 11:04:57 -0700 (PDT)"
            ],
            "References": "<20140826020746.062748014@networkplumber.org>\n\t<20140826020848.386074683@networkplumber.org>\n\t<F52918179C57134FAEC9EA62FA2F96251183B285@shsmsx102.ccr.corp.intel.com>\n\t<20140826092420.57e95493@urahara>\n\t<F52918179C57134FAEC9EA62FA2F96251183B79C@shsmsx102.ccr.corp.intel.com>",
            "MIME-Version": "1.0",
            "X-Received": "by 10.68.65.101 with SMTP id w5mr44105224pbs.5.1409162698192;\n\tWed, 27 Aug 2014 11:04:58 -0700 (PDT)",
            "Message-ID": "<20140827110452.1cba26e3@urahara>",
            "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20130820;\n\th=x-gm-message-state:date:from:to:cc:subject:message-id:in-reply-to\n\t:references:mime-version:content-type:content-transfer-encoding;\n\tbh=Rt6OBDrYQXE/P8pEyeZ2q+CxkBhpwfbxEsxmC04W9Mc=;\n\tb=Df2Xe81syb4HzIsLZrx+VRmVuT3JdKrIp+9Stx+MvZoTDx7ODXVeMAb1aUORDQP8bM\n\tsbfWdxYAd0a3cZzA/tAF/msZqM7O9EY39mWZ4Kw4ef2kumDEgyEuGnMcDzKQaCJ3Njzf\n\t0+w27OA974gT/Rspnzvg2XdmaVQKmysRtpjP1BTK2TSire6KDTxz5+BJHLr2T7RGGhC0\n\t1GGZExcFoPhspQsSsbWM1vLrJfa34GDt3Q8DW/rp/Od2C7A260JgbT6CdQ7FNxz9X6m/\n\tkmsULfkdzDjCyNFSZH9x/MF18UkV8gmBhj0RK0t0wqQjjNRUzKQWZcWv618nlKAyDWNo\n\t0XUw==",
            "List-Id": "patches and discussions about DPDK <dev.dpdk.org>",
            "Precedence": "list",
            "From": "Stephen Hemminger <stephen@networkplumber.org>",
            "Content-Type": "text/plain; charset=US-ASCII",
            "X-List-Received-Date": "Wed, 27 Aug 2014 18:00:54 -0000",
            "Return-Path": "<stephen@networkplumber.org>",
            "List-Help": "<mailto:dev-request@dpdk.org?subject=help>",
            "List-Subscribe": "<http://dpdk.org/ml/listinfo/dev>,\n\t<mailto:dev-request@dpdk.org?subject=subscribe>",
            "To": "\"Ouyang, Changchun\" <changchun.ouyang@intel.com>",
            "List-Post": "<mailto:dev@dpdk.org>",
            "List-Unsubscribe": "<http://dpdk.org/ml/options/dev>,\n\t<mailto:dev-request@dpdk.org?subject=unsubscribe>",
            "X-Gm-Message-State": "ALoCoQmNQAj5bwGAbLPDbCbgYwtosebezkY/IP+4kesZQLCeKzjnIwnpAYeSGduceYX4wakVYny8",
            "X-BeenThere": "dev@dpdk.org",
            "Content-Transfer-Encoding": "7bit",
            "Cc": "\"dev@dpdk.org\" <dev@dpdk.org>",
            "List-Archive": "<http://dpdk.org/ml/archives/dev/>",
            "Subject": "Re: [dpdk-dev] [RFC 06/10] virtio: use software vlan stripping"
        }
    },
    {
        "id": 503,
        "web_url": "https://patches.dpdk.org/comment/503/",
        "msgid": "<F52918179C57134FAEC9EA62FA2F96251183B79C@shsmsx102.ccr.corp.intel.com>",
        "date": "2014-08-27T05:42:09",
        "subject": "Re: [dpdk-dev] [RFC 06/10] virtio: use software vlan stripping",
        "submitter": {
            "id": 31,
            "url": "https://patches.dpdk.org/api/people/31/",
            "name": "Ouyang Changchun",
            "email": "changchun.ouyang@intel.com"
        },
        "content": "> -----Original Message-----\n> From: Stephen Hemminger [mailto:stephen@networkplumber.org]\n> Sent: Wednesday, August 27, 2014 12:24 AM\n> To: Ouyang, Changchun\n> Cc: dev@dpdk.org\n> Subject: Re: [RFC 06/10] virtio: use software vlan stripping\n> \n> On Tue, 26 Aug 2014 08:37:11 +0000\n> \"Ouyang, Changchun\" <changchun.ouyang@intel.com> wrote:\n> \n> > Hi Stephen,\n> >\n> > Would you please describe the use scenario for the front end rx vlan strip\n> and tx vlan insertion?\n> > In our current implementation, backend will strip vlan tag for RX, and insert\n> vlan tag for TX.\n> >\n> > Thanks\n> > Changchun\n> \n> First, we don't have to do software VLAN strip on our backend if we do this.\n> And this way we can always use VLAN insert on transmit. Otherwise you\n> have to introduce special case because there is no DPDK API to determine if\n> device does or does not do VLAN handling.\n> \n\nHow the virtio frontend tell backend whether it has software VLAN strip feature or not?\nIt seems no feature bit to negotiate it.\n\nThanks\nChangchun",
        "headers": {
            "X-Mailman-Version": "2.1.15",
            "X-MS-TNEF-Correlator": "",
            "X-ExtLoop1": "1",
            "Thread-Topic": "[RFC 06/10] virtio: use software vlan stripping",
            "x-originating-ip": "[10.239.127.40]",
            "Received": [
                "from mga03.intel.com (mga03.intel.com [143.182.124.21])\n\tby dpdk.org (Postfix) with ESMTP id B57025942\n\tfor <dev@dpdk.org>; Wed, 27 Aug 2014 07:38:11 +0200 (CEST)",
                "from azsmga001.ch.intel.com ([10.2.17.19])\n\tby azsmga101.ch.intel.com with ESMTP; 26 Aug 2014 22:42:13 -0700",
                "from fmsmsx107.amr.corp.intel.com ([10.18.124.205])\n\tby azsmga001.ch.intel.com with ESMTP; 26 Aug 2014 22:42:12 -0700",
                "from fmsmsx115.amr.corp.intel.com (10.18.116.19) by\n\tfmsmsx107.amr.corp.intel.com (10.18.124.205) with Microsoft SMTP\n\tServer (TLS) id 14.3.195.1; Tue, 26 Aug 2014 22:42:12 -0700",
                "from shsmsx151.ccr.corp.intel.com (10.239.6.50) by\n\tfmsmsx115.amr.corp.intel.com (10.18.116.19) with Microsoft SMTP\n\tServer (TLS) id 14.3.195.1; Tue, 26 Aug 2014 22:42:12 -0700",
                "from shsmsx102.ccr.corp.intel.com ([169.254.2.246]) by\n\tSHSMSX151.ccr.corp.intel.com ([169.254.3.174]) with mapi id\n\t14.03.0195.001; Wed, 27 Aug 2014 13:42:10 +0800"
            ],
            "References": "<20140826020746.062748014@networkplumber.org>\n\t<20140826020848.386074683@networkplumber.org>\n\t<F52918179C57134FAEC9EA62FA2F96251183B285@shsmsx102.ccr.corp.intel.com>\n\t<20140826092420.57e95493@urahara>",
            "MIME-Version": "1.0",
            "Message-ID": "<F52918179C57134FAEC9EA62FA2F96251183B79C@shsmsx102.ccr.corp.intel.com>",
            "Accept-Language": "zh-CN, en-US",
            "X-List-Received-Date": "Wed, 27 Aug 2014 05:38:12 -0000",
            "Thread-Index": "AQHPwNLIkuBom6zzbkOfNnmLgUOrQ5vihQRAgAAHmgCAAV8KEA==",
            "X-IronPort-AV": "E=Sophos;i=\"5.04,408,1406617200\"; d=\"scan'208\";a=\"473041675\"",
            "Content-Language": "en-US",
            "Content-Transfer-Encoding": "quoted-printable",
            "From": "\"Ouyang, Changchun\" <changchun.ouyang@intel.com>",
            "Content-Type": "text/plain; charset=\"us-ascii\"",
            "List-Post": "<mailto:dev@dpdk.org>",
            "Return-Path": "<changchun.ouyang@intel.com>",
            "X-MS-Has-Attach": "",
            "List-Help": "<mailto:dev-request@dpdk.org?subject=help>",
            "In-Reply-To": "<20140826092420.57e95493@urahara>",
            "List-Subscribe": "<http://dpdk.org/ml/listinfo/dev>,\n\t<mailto:dev-request@dpdk.org?subject=subscribe>",
            "To": "Stephen Hemminger <stephen@networkplumber.org>",
            "Precedence": "list",
            "List-Id": "patches and discussions about DPDK <dev.dpdk.org>",
            "List-Unsubscribe": "<http://dpdk.org/ml/options/dev>,\n\t<mailto:dev-request@dpdk.org?subject=unsubscribe>",
            "X-BeenThere": "dev@dpdk.org",
            "Subject": "Re: [dpdk-dev] [RFC 06/10] virtio: use software vlan stripping",
            "Cc": "\"dev@dpdk.org\" <dev@dpdk.org>",
            "List-Archive": "<http://dpdk.org/ml/archives/dev/>",
            "Date": "Wed, 27 Aug 2014 05:42:09 +0000"
        }
    },
    {
        "id": 494,
        "web_url": "https://patches.dpdk.org/comment/494/",
        "msgid": "<20140826092420.57e95493@urahara>",
        "date": "2014-08-26T16:24:20",
        "subject": "Re: [dpdk-dev] [RFC 06/10] virtio: use software vlan stripping",
        "submitter": {
            "id": 27,
            "url": "https://patches.dpdk.org/api/people/27/",
            "name": "Stephen Hemminger",
            "email": "stephen@networkplumber.org"
        },
        "content": "On Tue, 26 Aug 2014 08:37:11 +0000\n\"Ouyang, Changchun\" <changchun.ouyang@intel.com> wrote:\n\n> Hi Stephen,\n> \n> Would you please describe the use scenario for the front end rx vlan strip and tx vlan insertion?\n> In our current implementation, backend will strip vlan tag for RX, and insert vlan tag for TX.\n>   \n> Thanks\n> Changchun\n\nFirst, we don't have to do software VLAN strip on our backend if we do this.\nAnd this way we can always use VLAN insert on transmit. Otherwise you have to\nintroduce special case because there is no DPDK API to determine if device does or does not\ndo VLAN handling.",
        "headers": {
            "X-Mailman-Version": "2.1.15",
            "Date": "Tue, 26 Aug 2014 09:24:20 -0700",
            "In-Reply-To": "<F52918179C57134FAEC9EA62FA2F96251183B285@shsmsx102.ccr.corp.intel.com>",
            "Received": [
                "from mail-pa0-f41.google.com (mail-pa0-f41.google.com\n\t[209.85.220.41]) by dpdk.org (Postfix) with ESMTP id D4BB6B3D5\n\tfor <dev@dpdk.org>; Tue, 26 Aug 2014 18:20:23 +0200 (CEST)",
                "by mail-pa0-f41.google.com with SMTP id rd3so23724552pab.28\n\tfor <dev@dpdk.org>; Tue, 26 Aug 2014 09:24:23 -0700 (PDT)",
                "from urahara (static-50-53-65-80.bvtn.or.frontiernet.net.\n\t[50.53.65.80]) by mx.google.com with ESMTPSA id\n\tf17sm5561825pdm.0.2014.08.26.09.24.22 for <multiple recipients>\n\t(version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);\n\tTue, 26 Aug 2014 09:24:23 -0700 (PDT)"
            ],
            "References": "<20140826020746.062748014@networkplumber.org>\n\t<20140826020848.386074683@networkplumber.org>\n\t<F52918179C57134FAEC9EA62FA2F96251183B285@shsmsx102.ccr.corp.intel.com>",
            "MIME-Version": "1.0",
            "X-Received": "by 10.68.194.66 with SMTP id hu2mr11755583pbc.19.1409070263565; \n\tTue, 26 Aug 2014 09:24:23 -0700 (PDT)",
            "Message-ID": "<20140826092420.57e95493@urahara>",
            "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20130820;\n\th=x-gm-message-state:date:from:to:cc:subject:message-id:in-reply-to\n\t:references:mime-version:content-type:content-transfer-encoding;\n\tbh=M6I4BTikdabLIFDnxCsw2KJSEe4598O5IASMdLdNgZY=;\n\tb=MVewt5jxej0DPzCAhutZnqg8RgMY6GLDzS/Zz74fYWRXMhHxP4IwM2runpbi0AwBRb\n\t3gprLaAGgDJmT7dVyKYWRtmpcAvvM05z9FoykdCBDIED9/Ul3ob0EF9FfY3UVVm+f+Bc\n\t1sh9SjTuSJvw647Hxmo8EIyFzlfkJYu5JvgOrecgMdtR6xg9rt3+2cK98j1i2bnJ1E8p\n\tGBA0uOYyotUwDq/CT53Xn3cb4rrAOmVC1YWVtQpz+7tn3huZLDn9g7dxlXB8mQpEpYNs\n\tlgnTcnTREifEf9y6R+ICrr86hLDgAq4h7KwbACaz1QiX4tiKfJhQlt7HTKTPkiLSOHWl\n\t4Eug==",
            "List-Id": "patches and discussions about DPDK <dev.dpdk.org>",
            "Precedence": "list",
            "From": "Stephen Hemminger <stephen@networkplumber.org>",
            "Content-Type": "text/plain; charset=US-ASCII",
            "X-List-Received-Date": "Tue, 26 Aug 2014 16:20:24 -0000",
            "Return-Path": "<stephen@networkplumber.org>",
            "List-Help": "<mailto:dev-request@dpdk.org?subject=help>",
            "List-Subscribe": "<http://dpdk.org/ml/listinfo/dev>,\n\t<mailto:dev-request@dpdk.org?subject=subscribe>",
            "To": "\"Ouyang, Changchun\" <changchun.ouyang@intel.com>",
            "List-Post": "<mailto:dev@dpdk.org>",
            "List-Unsubscribe": "<http://dpdk.org/ml/options/dev>,\n\t<mailto:dev-request@dpdk.org?subject=unsubscribe>",
            "X-Gm-Message-State": "ALoCoQnbHeuX1nI1Du0DCTf7iK5ix3VcnGB1+OJR8Teh+073e2/z1yAEUaOgBOY8Sq2oJOeg3fLX",
            "X-BeenThere": "dev@dpdk.org",
            "Content-Transfer-Encoding": "7bit",
            "Cc": "\"dev@dpdk.org\" <dev@dpdk.org>",
            "List-Archive": "<http://dpdk.org/ml/archives/dev/>",
            "Subject": "Re: [dpdk-dev] [RFC 06/10] virtio: use software vlan stripping"
        }
    },
    {
        "id": 471,
        "web_url": "https://patches.dpdk.org/comment/471/",
        "msgid": "<F52918179C57134FAEC9EA62FA2F96251183B285@shsmsx102.ccr.corp.intel.com>",
        "date": "2014-08-26T08:37:11",
        "subject": "Re: [dpdk-dev] [RFC 06/10] virtio: use software vlan stripping",
        "submitter": {
            "id": 31,
            "url": "https://patches.dpdk.org/api/people/31/",
            "name": "Ouyang Changchun",
            "email": "changchun.ouyang@intel.com"
        },
        "content": "Hi Stephen,\r\n\r\nWould you please describe the use scenario for the front end rx vlan strip and tx vlan insertion?\r\nIn our current implementation, backend will strip vlan tag for RX, and insert vlan tag for TX.\r\n  \r\nThanks\r\nChangchun\r\n\r\n> -----Original Message-----\r\n> From: Stephen Hemminger [mailto:stephen@networkplumber.org]\r\n> Sent: Tuesday, August 26, 2014 10:08 AM\r\n> To: Ouyang, Changchun\r\n> Cc: dev@dpdk.org; Stephen Hemminger\r\n> Subject: [RFC 06/10] virtio: use software vlan stripping\r\n> \r\n> Implement VLAN stripping in software. This allows application to be device\r\n> independent.\r\n> \r\n> Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>\r\n> \r\n> \r\n> ---\r\n>  lib/librte_pmd_virtio/virtio_ethdev.c |    2 ++\r\n>  lib/librte_pmd_virtio/virtio_pci.h    |    1 +\r\n>  lib/librte_pmd_virtio/virtio_rxtx.c   |   20 ++++++++++++++++++--\r\n>  3 files changed, 21 insertions(+), 2 deletions(-)\r\n> \r\n> --- a/lib/librte_pmd_virtio/virtio_ethdev.c\t2014-08-25\r\n> 19:00:07.574537243 -0700\r\n> +++ b/lib/librte_pmd_virtio/virtio_ethdev.c\t2014-08-25\r\n> 19:00:07.574537243 -0700\r\n> @@ -976,6 +976,8 @@ virtio_dev_configure(struct rte_eth_dev\r\n>  \t\treturn (-EINVAL);\r\n>  \t}\r\n> \r\n> +\thw->vlan_strip = rxmode->hw_vlan_strip;\r\n> +\r\n>  \tret = vtpci_irq_config(hw, 0);\r\n>  \tif (ret != 0)\r\n>  \t\tPMD_DRV_LOG(ERR, \"failed to set config vector\");\r\n> --- a/lib/librte_pmd_virtio/virtio_pci.h\t2014-08-25 19:00:07.574537243 -0700\r\n> +++ b/lib/librte_pmd_virtio/virtio_pci.h\t2014-08-25\r\n> 19:00:07.574537243 -0700\r\n> @@ -168,6 +168,7 @@ struct virtio_hw {\r\n>  \tuint32_t    max_tx_queues;\r\n>  \tuint32_t    max_rx_queues;\r\n>  \tuint16_t    vtnet_hdr_size;\r\n> +\tuint8_t\t    vlan_strip;\r\n>  \tuint8_t\t    use_msix;\r\n>  \tuint8_t     mac_addr[ETHER_ADDR_LEN];\r\n>  };\r\n> --- a/lib/librte_pmd_virtio/virtio_rxtx.c\t2014-08-25 19:00:07.574537243 -0700\r\n> +++ b/lib/librte_pmd_virtio/virtio_rxtx.c\t2014-08-25\r\n> 19:00:07.574537243 -0700\r\n> @@ -49,6 +49,7 @@\r\n>  #include <rte_prefetch.h>\r\n>  #include <rte_string_fns.h>\r\n>  #include <rte_errno.h>\r\n> +#include <rte_byteorder.h>\r\n> \r\n>  #include \"virtio_logs.h\"\r\n>  #include \"virtio_ethdev.h\"\r\n> @@ -406,8 +407,8 @@ virtio_dev_tx_queue_setup(struct rte_eth\r\n> \r\n>  \tPMD_INIT_FUNC_TRACE();\r\n> \r\n> -\tif ((tx_conf->txq_flags & ETH_TXQ_FLAGS_NOOFFLOADS)\r\n> -\t    != ETH_TXQ_FLAGS_NOOFFLOADS) {\r\n> +\tif ((tx_conf->txq_flags & ETH_TXQ_FLAGS_NOXSUMS)\r\n> +\t    != ETH_TXQ_FLAGS_NOXSUMS) {\r\n>  \t\tPMD_INIT_LOG(ERR, \"TX checksum offload not\r\n> supported\\n\");\r\n>  \t\treturn -EINVAL;\r\n>  \t}\r\n> @@ -444,6 +445,7 @@ uint16_t\r\n>  virtio_recv_pkts(void *rx_queue, struct rte_mbuf **rx_pkts, uint16_t\r\n> nb_pkts)  {\r\n>  \tstruct virtqueue *rxvq = rx_queue;\r\n> +\tstruct virtio_hw *hw = rxvq->hw;\r\n>  \tstruct rte_mbuf *rxm, *new_mbuf;\r\n>  \tuint16_t nb_used, num, nb_rx = 0;\r\n>  \tuint32_t len[VIRTIO_MBUF_BURST_SZ];\r\n> @@ -487,6 +489,9 @@ virtio_recv_pkts(void *rx_queue, struct\r\n>  \t\trxm->pkt.pkt_len = (uint32_t)(len[i] - hdr_size);\r\n>  \t\trxm->pkt.data_len = (uint16_t)(len[i] - hdr_size);\r\n> \r\n> +\t\tif (hw->vlan_strip)\r\n> +\t\t\trte_vlan_strip(rxm);\r\n> +\r\n>  \t\tVIRTIO_DUMP_PACKET(rxm, rxm->pkt.data_len);\r\n> \r\n>  \t\trx_pkts[nb_rx++] = rxm;\r\n> @@ -711,6 +716,17 @@ virtio_xmit_pkts(void *tx_queue, struct\r\n> \r\n>  \t\tif (tx_pkts[nb_tx]->pkt.nb_segs <= txvq->vq_free_cnt) {\r\n>  \t\t\ttxm = tx_pkts[nb_tx];\r\n> +\r\n> +\t\t\t/* Do VLAN tag insertion */\r\n> +\t\t\tif (txm->ol_flags & PKT_TX_VLAN_PKT) {\r\n> +\t\t\t\terror = rte_vlan_insert(txm);\r\n> +\t\t\t\tif (unlikely(error)) {\r\n> +\t\t\t\t\trte_pktmbuf_free(txm);\r\n> +\t\t\t\t\t++nb_tx;\r\n> +\t\t\t\t\tcontinue;\r\n> +\t\t\t\t}\r\n> +\t\t\t}\r\n> +\r\n>  \t\t\t/* Enqueue Packet buffers */\r\n>  \t\t\terror = virtqueue_enqueue_xmit(txvq, txm);\r\n>  \t\t\tif (unlikely(error)) {",
        "headers": {
            "X-Mailman-Version": "2.1.15",
            "X-MS-TNEF-Correlator": "",
            "X-ExtLoop1": "1",
            "Thread-Topic": "[RFC 06/10] virtio: use software vlan stripping",
            "x-originating-ip": "[10.239.127.40]",
            "Received": [
                "from mga01.intel.com (mga01.intel.com [192.55.52.88])\n\tby dpdk.org (Postfix) with ESMTP id 117A7B36D\n\tfor <dev@dpdk.org>; Tue, 26 Aug 2014 10:33:16 +0200 (CEST)",
                "from fmsmga003.fm.intel.com ([10.253.24.29])\n\tby fmsmga101.fm.intel.com with ESMTP; 26 Aug 2014 01:37:14 -0700",
                "from fmsmsx106.amr.corp.intel.com ([10.18.124.204])\n\tby FMSMGA003.fm.intel.com with ESMTP; 26 Aug 2014 01:33:06 -0700",
                "from fmsmsx151.amr.corp.intel.com (10.19.17.220) by\n\tFMSMSX106.amr.corp.intel.com (10.18.124.204) with Microsoft SMTP\n\tServer (TLS) id 14.3.195.1; Tue, 26 Aug 2014 01:37:14 -0700",
                "from shsmsx152.ccr.corp.intel.com (10.239.6.52) by\n\tFMSMSX151.amr.corp.intel.com (10.19.17.220) with Microsoft SMTP\n\tServer (TLS) id 14.3.195.1; Tue, 26 Aug 2014 01:37:14 -0700",
                "from shsmsx102.ccr.corp.intel.com ([169.254.2.246]) by\n\tSHSMSX152.ccr.corp.intel.com ([169.254.6.147]) with mapi id\n\t14.03.0195.001; Tue, 26 Aug 2014 16:37:11 +0800"
            ],
            "References": "<20140826020746.062748014@networkplumber.org>\n\t<20140826020848.386074683@networkplumber.org>",
            "MIME-Version": "1.0",
            "Message-ID": "<F52918179C57134FAEC9EA62FA2F96251183B285@shsmsx102.ccr.corp.intel.com>",
            "Accept-Language": "zh-CN, en-US",
            "X-List-Received-Date": "Tue, 26 Aug 2014 08:33:17 -0000",
            "Thread-Index": "AQHPwNLIkuBom6zzbkOfNnmLgUOrQ5vihQRA",
            "X-IronPort-AV": "E=Sophos;i=\"4.97,862,1389772800\"; d=\"scan'208\";a=\"377031719\"",
            "Content-Language": "en-US",
            "Content-Transfer-Encoding": "base64",
            "From": "\"Ouyang, Changchun\" <changchun.ouyang@intel.com>",
            "Content-Type": "text/plain; charset=\"utf-8\"",
            "List-Post": "<mailto:dev@dpdk.org>",
            "Return-Path": "<changchun.ouyang@intel.com>",
            "X-MS-Has-Attach": "",
            "List-Help": "<mailto:dev-request@dpdk.org?subject=help>",
            "In-Reply-To": "<20140826020848.386074683@networkplumber.org>",
            "List-Subscribe": "<http://dpdk.org/ml/listinfo/dev>,\n\t<mailto:dev-request@dpdk.org?subject=subscribe>",
            "To": "Stephen Hemminger <stephen@networkplumber.org>",
            "Precedence": "list",
            "List-Id": "patches and discussions about DPDK <dev.dpdk.org>",
            "List-Unsubscribe": "<http://dpdk.org/ml/options/dev>,\n\t<mailto:dev-request@dpdk.org?subject=unsubscribe>",
            "X-BeenThere": "dev@dpdk.org",
            "Subject": "Re: [dpdk-dev] [RFC 06/10] virtio: use software vlan stripping",
            "Cc": "\"dev@dpdk.org\" <dev@dpdk.org>",
            "List-Archive": "<http://dpdk.org/ml/archives/dev/>",
            "Date": "Tue, 26 Aug 2014 08:37:11 +0000"
        }
    }
]