[{"id":1773409,"web_url":"http://patchwork.ozlabs.org/comment/1773409/","msgid":"<44DCE2C2-44E6-4F6F-AE2F-CEC877AAD4FF@vmware.com>","list_archive_url":null,"date":"2017-09-22T09:44:33","subject":"Re: [ovs-dev] [PATCH v2 08/12] netdev-dpdk: Cleanup dpdk_do_tx_copy.","submitter":{"id":68212,"url":"http://patchwork.ozlabs.org/api/people/68212/","name":"Darrell Ball","email":"dball@vmware.com"},"content":"I applied the patch to dpdk_merge here\n\nhttps://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_darball_ovs_commits_dpdk-5Fmerge&d=DwIGaQ&c=uilaK90D4TOVoH58JNXRgQ&r=BVhFA09CGX7JQ5Ih-uZnsw&m=A2_FCacqbp2moAo3HGFlTuxsjONUGhlN42OBcAuQQ6w&s=b6btPKhgvOFr2GOUYvktND6kaC6jc3fXI-mXfvNgXOU&e=\n\n\nOn 9/20/17, 6:28 AM, \"ovs-dev-bounces@openvswitch.org on behalf of Bhanuprakash Bodireddy\" <ovs-dev-bounces@openvswitch.org on behalf of bhanuprakash.bodireddy@intel.com> wrote:\n\n    Cleanup dpdk_do_tx_copy().\n    \n    Signed-off-by: Bhanuprakash Bodireddy <bhanuprakash.bodireddy@intel.com>\n    ---\n     lib/netdev-dpdk.c | 22 ++++++++++------------\n     1 file changed, 10 insertions(+), 12 deletions(-)\n    \n    diff --git a/lib/netdev-dpdk.c b/lib/netdev-dpdk.c\n    index 60ec528..60887e5 100644\n    --- a/lib/netdev-dpdk.c\n    +++ b/lib/netdev-dpdk.c\n    @@ -1835,22 +1835,23 @@ static void\n     dpdk_do_tx_copy(struct netdev *netdev, int qid, struct dp_packet_batch *batch)\n         OVS_NO_THREAD_SAFETY_ANALYSIS\n     {\n    +    const size_t batch_cnt = dp_packet_batch_size(batch);\n     #if !defined(__CHECKER__) && !defined(_WIN32)\n    -    const size_t PKT_ARRAY_SIZE = batch->count;\n    +    const size_t PKT_ARRAY_SIZE = batch_cnt;\n     #else\n         /* Sparse or MSVC doesn't like variable length array. */\n         enum { PKT_ARRAY_SIZE = NETDEV_MAX_BURST };\n     #endif\n         struct netdev_dpdk *dev = netdev_dpdk_cast(netdev);\n         struct rte_mbuf *pkts[PKT_ARRAY_SIZE];\n    -    uint32_t cnt = batch->count;\n    +    uint32_t cnt = batch_cnt;\n         uint32_t dropped = 0;\n     \n         if (dev->type != DPDK_DEV_VHOST) {\n             /* Check if QoS has been configured for this netdev. */\n             cnt = netdev_dpdk_qos_run(dev, (struct rte_mbuf **) batch->packets,\n    -                                  cnt, false);\n    -        dropped += batch->count - cnt;\n    +                                  batch_cnt, false);\n    +        dropped += batch_cnt - cnt;\n         }\n     \n         dp_packet_batch_apply_cutlen(batch);\n    @@ -1858,8 +1859,8 @@ dpdk_do_tx_copy(struct netdev *netdev, int qid, struct dp_packet_batch *batch)\n         uint32_t txcnt = 0;\n     \n         for (uint32_t i = 0; i < cnt; i++) {\n    -\n    -        uint32_t size = dp_packet_size(batch->packets[i]);\n    +        struct dp_packet *packet = batch->packets[i];\n    +        uint32_t size = dp_packet_size(packet);\n     \n             if (OVS_UNLIKELY(size > dev->max_packet_len)) {\n                 VLOG_WARN_RL(&rl, \"Too big size %u max_packet_len %d\",\n    @@ -1870,18 +1871,15 @@ dpdk_do_tx_copy(struct netdev *netdev, int qid, struct dp_packet_batch *batch)\n             }\n     \n             pkts[txcnt] = rte_pktmbuf_alloc(dev->dpdk_mp->mp);\n    -\n    -        if (!pkts[txcnt]) {\n    +        if (OVS_UNLIKELY(!pkts[txcnt])) {\n                 dropped += cnt - i;\n                 break;\n             }\n     \n             /* We have to do a copy for now */\n             memcpy(rte_pktmbuf_mtod(pkts[txcnt], void *),\n    -               dp_packet_data(batch->packets[i]), size);\n    -\n    -        rte_pktmbuf_data_len(pkts[txcnt]) = size;\n    -        rte_pktmbuf_pkt_len(pkts[txcnt]) = size;\n    +               dp_packet_data(packet), size);\n    +        dp_packet_set_size((struct dp_packet *)pkts[txcnt], size);\n     \n             txcnt++;\n         }\n    -- \n    2.4.11\n    \n    _______________________________________________\n    dev mailing list\n    dev@openvswitch.org\n    https://urldefense.proofpoint.com/v2/url?u=https-3A__mail.openvswitch.org_mailman_listinfo_ovs-2Ddev&d=DwICAg&c=uilaK90D4TOVoH58JNXRgQ&r=BVhFA09CGX7JQ5Ih-uZnsw&m=KVkaC1b7vq0ZhITyJqwrjMEw5FmS2iT-F9m6_cD-s0U&s=FulsJ8CXEawukbcPckl5ZsIjs_uZTnSLU56B1FUVj7U&e=","headers":{"Return-Path":"<ovs-dev-bounces@openvswitch.org>","X-Original-To":["incoming@patchwork.ozlabs.org","dev@openvswitch.org"],"Delivered-To":["patchwork-incoming@bilbo.ozlabs.org","ovs-dev@mail.linuxfoundation.org"],"Authentication-Results":["ozlabs.org;\n\tspf=pass (mailfrom) smtp.mailfrom=openvswitch.org\n\t(client-ip=140.211.169.12; helo=mail.linuxfoundation.org;\n\tenvelope-from=ovs-dev-bounces@openvswitch.org;\n\treceiver=<UNKNOWN>)","ozlabs.org;\n\tdkim=fail reason=\"signature verification failed\" (1024-bit key;\n\tunprotected) header.d=onevmw.onmicrosoft.com\n\theader.i=@onevmw.onmicrosoft.com header.b=\"lukXb/Pc\"; \n\tdkim-atps=neutral","spf=none (sender IP is )\n\tsmtp.mailfrom=dball@vmware.com; "],"Received":["from mail.linuxfoundation.org (mail.linuxfoundation.org\n\t[140.211.169.12])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256\n\tbits)) (No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPS id 3xz7w51N4Yz9s9Y\n\tfor <incoming@patchwork.ozlabs.org>;\n\tFri, 22 Sep 2017 19:48:37 +1000 (AEST)","from mail.linux-foundation.org (localhost [127.0.0.1])\n\tby mail.linuxfoundation.org (Postfix) with ESMTP id E33EBB63;\n\tFri, 22 Sep 2017 09:44:37 +0000 (UTC)","from smtp1.linuxfoundation.org (smtp1.linux-foundation.org\n\t[172.17.192.35])\n\tby mail.linuxfoundation.org (Postfix) with ESMTPS id 59B14B0C\n\tfor <dev@openvswitch.org>; Fri, 22 Sep 2017 09:44:36 +0000 (UTC)","from NAM02-BL2-obe.outbound.protection.outlook.com\n\t(mail-bl2nam02on0082.outbound.protection.outlook.com [104.47.38.82])\n\tby smtp1.linuxfoundation.org (Postfix) with ESMTPS id 82B23442\n\tfor <dev@openvswitch.org>; Fri, 22 Sep 2017 09:44:35 +0000 (UTC)","from MWHPR05MB3406.namprd05.prod.outlook.com (10.174.175.155) by\n\tMWHPR05MB3406.namprd05.prod.outlook.com (10.174.175.155) with\n\tMicrosoft SMTP Server (version=TLS1_2,\n\tcipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id\n\t15.20.77.5; Fri, 22 Sep 2017 09:44:33 +0000","from MWHPR05MB3406.namprd05.prod.outlook.com ([10.174.175.155]) by\n\tMWHPR05MB3406.namprd05.prod.outlook.com ([10.174.175.155]) with\n\tmapi id 15.20.0077.007; Fri, 22 Sep 2017 09:44:33 +0000"],"X-Greylist":"whitelisted by SQLgrey-1.7.6","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=onevmw.onmicrosoft.com; s=selector1-vmware-com;\n\th=From:Date:Subject:Message-ID:Content-Type:MIME-Version;\n\tbh=RsdQE2sS+GbwdzcEJ8Wt2JLEO0vy+dJEsoBedR4PG/I=;\n\tb=lukXb/PcUs6LQxGX8UFvZlk7XILrhdq5+a7onsWDSdOZtWJERORV4UB12XUhWYMTvglucQ3bJq2Nju+uS7q0q+oUkegh68Qg7OJSbCNa7BitPXxzUbYpuEjNKGYFocVmbvZ7+L/tIPb9EG2ANnoLMfYT+rzWX8qUf8FMRIqKJ2w=","From":"Darrell Ball <dball@vmware.com>","To":"Bhanuprakash Bodireddy <bhanuprakash.bodireddy@intel.com>,\n\t\"dev@openvswitch.org\" <dev@openvswitch.org>","Thread-Topic":"[ovs-dev] [PATCH v2 08/12] netdev-dpdk: Cleanup\n\tdpdk_do_tx_copy.","Thread-Index":"AQHTMhRqwXahQ87sJUGJ/k2P5KZ02aLAqp8A","Date":"Fri, 22 Sep 2017 09:44:33 +0000","Message-ID":"<44DCE2C2-44E6-4F6F-AE2F-CEC877AAD4FF@vmware.com>","References":"<1505913181-82547-1-git-send-email-bhanuprakash.bodireddy@intel.com>\n\t<1505913181-82547-9-git-send-email-bhanuprakash.bodireddy@intel.com>","In-Reply-To":"<1505913181-82547-9-git-send-email-bhanuprakash.bodireddy@intel.com>","Accept-Language":"en-US","Content-Language":"en-US","X-MS-Has-Attach":"","X-MS-TNEF-Correlator":"","user-agent":"Microsoft-MacOutlook/f.26.0.170902","x-originating-ip":"[73.162.236.45]","x-ms-publictraffictype":"Email","x-microsoft-exchange-diagnostics":"1; MWHPR05MB3406;\n\t20:5ubRZnyHm+ZjL39OmKThzTpD4epwSjt4pVr9+7N/Tq7Ix3UTihm1hla8yCONfdflhekdmDNWaMnbbgIaP8aWTEvOqKdR6azOdCXvZLK62Z62wQmhgiDQCEhSIgPNG7nsUOi67rpqDTFKMKHNMGszTMXaR+Y8OSqwRLjMQnHpb/c=","x-ms-exchange-antispam-srfa-diagnostics":"SSOS;","x-ms-office365-filtering-correlation-id":"039d9531-7165-4432-0458-08d5019e87ca","x-microsoft-antispam":"UriScan:; BCL:0; PCL:0;\n\tRULEID:(300000500095)(300135000095)(300000501095)(300135300095)(22001)(300000502095)(300135100095)(2017030254152)(300000503095)(300135400095)(2017052603199)(201703131423075)(201703031133081)(201702281549075)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095);\n\tSRVR:MWHPR05MB3406; ","x-ms-traffictypediagnostic":"MWHPR05MB3406:","authentication-results":["ozlabs.org;\n\tspf=pass (mailfrom) smtp.mailfrom=openvswitch.org\n\t(client-ip=140.211.169.12; helo=mail.linuxfoundation.org;\n\tenvelope-from=ovs-dev-bounces@openvswitch.org;\n\treceiver=<UNKNOWN>)","ozlabs.org;\n\tdkim=fail reason=\"signature verification failed\" (1024-bit key;\n\tunprotected) header.d=onevmw.onmicrosoft.com\n\theader.i=@onevmw.onmicrosoft.com header.b=\"lukXb/Pc\"; \n\tdkim-atps=neutral","spf=none (sender IP is )\n\tsmtp.mailfrom=dball@vmware.com; "],"x-exchange-antispam-report-test":"UriScan:(10436049006162)(216315784871565)(228905959029699); ","x-microsoft-antispam-prvs":"<MWHPR05MB34066BC2914F11D0713614B1C8670@MWHPR05MB3406.namprd05.prod.outlook.com>","x-exchange-antispam-report-cfa-test":"BCL:0; PCL:0;\n\tRULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(2401047)(8121501046)(5005006)(93006095)(93001095)(100000703101)(100105400095)(10201501046)(3002001)(6041248)(20161123560025)(20161123555025)(20161123562025)(20161123558100)(20161123564025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(6072148)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095);\n\tSRVR:MWHPR05MB3406; BCL:0; PCL:0;\n\tRULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095);\n\tSRVR:MWHPR05MB3406; ","x-forefront-prvs":"0438F90F17","x-forefront-antispam-report":"SFV:NSPM;\n\tSFS:(10009020)(6009001)(346002)(376002)(189002)(377454003)(199003)(24454002)(86362001)(81156014)(81166006)(97736004)(83506001)(106356001)(8676002)(99286003)(6306002)(7736002)(305945005)(6512007)(6436002)(575784001)(6486002)(77096006)(58126008)(82746002)(316002)(66066001)(8936002)(6506006)(229853002)(189998001)(110136005)(2900100001)(53546010)(5660300001)(14454004)(6246003)(2501003)(3280700002)(54356999)(76176999)(50986999)(2906002)(101416001)(33656002)(2950100002)(478600001)(83716003)(105586002)(36756003)(102836003)(25786009)(966005)(68736007)(3660700001)(6116002)(53936002)(3846002);\n\tDIR:OUT; SFP:1101; SCL:1; SRVR:MWHPR05MB3406;\n\tH:MWHPR05MB3406.namprd05.prod.outlook.com; FPR:; SPF:None;\n\tPTR:InfoNoRecords; MX:1; A:1; LANG:en; ","received-spf":"None (protection.outlook.com: vmware.com does not designate\n\tpermitted sender hosts)","spamdiagnosticoutput":"1:99","spamdiagnosticmetadata":"NSPM","Content-ID":"<01AC88E23E81E244A902066AD8855DCE@namprd05.prod.outlook.com>","MIME-Version":"1.0","X-OriginatorOrg":"vmware.com","X-MS-Exchange-CrossTenant-originalarrivaltime":"22 Sep 2017 09:44:33.5698\n\t(UTC)","X-MS-Exchange-CrossTenant-fromentityheader":"Hosted","X-MS-Exchange-CrossTenant-id":"b39138ca-3cee-4b4a-a4d6-cd83d9dd62f0","X-MS-Exchange-Transport-CrossTenantHeadersStamped":"MWHPR05MB3406","X-Spam-Status":"No, score=0.0 required=5.0 tests=DKIM_SIGNED,DKIM_VALID,\n\tRCVD_IN_DNSWL_NONE autolearn=disabled version=3.3.1","X-Spam-Checker-Version":"SpamAssassin 3.3.1 (2010-03-16) on\n\tsmtp1.linux-foundation.org","Subject":"Re: [ovs-dev] [PATCH v2 08/12] netdev-dpdk: Cleanup dpdk_do_tx_copy.","X-BeenThere":"ovs-dev@openvswitch.org","X-Mailman-Version":"2.1.12","Precedence":"list","List-Id":"<ovs-dev.openvswitch.org>","List-Unsubscribe":"<https://mail.openvswitch.org/mailman/options/ovs-dev>,\n\t<mailto:ovs-dev-request@openvswitch.org?subject=unsubscribe>","List-Archive":"<http://mail.openvswitch.org/pipermail/ovs-dev/>","List-Post":"<mailto:ovs-dev@openvswitch.org>","List-Help":"<mailto:ovs-dev-request@openvswitch.org?subject=help>","List-Subscribe":"<https://mail.openvswitch.org/mailman/listinfo/ovs-dev>,\n\t<mailto:ovs-dev-request@openvswitch.org?subject=subscribe>","Content-Type":"text/plain; charset=\"us-ascii\"","Content-Transfer-Encoding":"7bit","Sender":"ovs-dev-bounces@openvswitch.org","Errors-To":"ovs-dev-bounces@openvswitch.org"}}]