[{"id":1773408,"web_url":"http://patchwork.ozlabs.org/comment/1773408/","msgid":"<EF176FA6-23C6-4A68-8E40-B39BBEC8066B@vmware.com>","list_archive_url":null,"date":"2017-09-22T09:44:29","subject":"Re: [ovs-dev] [PATCH v2 06/12] dpif-netdev: Use\n\tDP_PACKET_BATCH_FOR_EACH in fast_path_processing.","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:27 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    Use DP_PACKET_BATCH_FOR_EACH macro in fast_path_processing().\n    \n    Signed-off-by: Bhanuprakash Bodireddy <bhanuprakash.bodireddy@intel.com>\n    ---\n     lib/dpif-netdev.c | 15 +++++++--------\n     1 file changed, 7 insertions(+), 8 deletions(-)\n    \n    diff --git a/lib/dpif-netdev.c b/lib/dpif-netdev.c\n    index 5000f7a..07fca44 100644\n    --- a/lib/dpif-netdev.c\n    +++ b/lib/dpif-netdev.c\n    @@ -5001,14 +5001,14 @@ fast_path_processing(struct dp_netdev_pmd_thread *pmd,\n                          odp_port_t in_port,\n                          long long now)\n     {\n    -    int cnt = packets_->count;\n    +    const size_t cnt = dp_packet_batch_size(packets_);\n     #if !defined(__CHECKER__) && !defined(_WIN32)\n         const size_t PKT_ARRAY_SIZE = 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 dp_packet **packets = packets_->packets;\n    +    struct dp_packet *packet;\n         struct dpcls *cls;\n         struct dpcls_rule *rules[PKT_ARRAY_SIZE];\n         struct dp_netdev *dp = pmd->dp;\n    @@ -5036,7 +5036,7 @@ fast_path_processing(struct dp_netdev_pmd_thread *pmd,\n             ofpbuf_use_stub(&actions, actions_stub, sizeof actions_stub);\n             ofpbuf_use_stub(&put_actions, slow_stub, sizeof slow_stub);\n     \n    -        for (i = 0; i < cnt; i++) {\n    +        DP_PACKET_BATCH_FOR_EACH (packet, packets_) {\n                 struct dp_netdev_flow *netdev_flow;\n     \n                 if (OVS_LIKELY(rules[i])) {\n    @@ -5055,7 +5055,7 @@ fast_path_processing(struct dp_netdev_pmd_thread *pmd,\n                 }\n     \n                 miss_cnt++;\n    -            handle_packet_upcall(pmd, packets[i], &keys[i], &actions,\n    +            handle_packet_upcall(pmd, packet, &keys[i], &actions,\n                                      &put_actions, &lost_cnt, now);\n             }\n     \n    @@ -5063,17 +5063,16 @@ fast_path_processing(struct dp_netdev_pmd_thread *pmd,\n             ofpbuf_uninit(&put_actions);\n             fat_rwlock_unlock(&dp->upcall_rwlock);\n         } else if (OVS_UNLIKELY(any_miss)) {\n    -        for (i = 0; i < cnt; i++) {\n    +        DP_PACKET_BATCH_FOR_EACH (packet, packets_) {\n                 if (OVS_UNLIKELY(!rules[i])) {\n    -                dp_packet_delete(packets[i]);\n    +                dp_packet_delete(packet);\n                     lost_cnt++;\n                     miss_cnt++;\n                 }\n             }\n         }\n     \n    -    for (i = 0; i < cnt; i++) {\n    -        struct dp_packet *packet = packets[i];\n    +    DP_PACKET_BATCH_FOR_EACH (packet, packets_) {\n             struct dp_netdev_flow *flow;\n     \n             if (OVS_UNLIKELY(!rules[i])) {\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=A0ml__l5MyGe06dBad4HmKMMag4q3dFDL_gAXaYpi-g&s=do0oVzNddG56LYP4Mu9PvZM9wtAfe9PAKvGh930VMJ0&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=\"AmQpf5oS\"; \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 3xz7vH1smJz9s9Y\n\tfor <incoming@patchwork.ozlabs.org>;\n\tFri, 22 Sep 2017 19:47:55 +1000 (AEST)","from mail.linux-foundation.org (localhost [127.0.0.1])\n\tby mail.linuxfoundation.org (Postfix) with ESMTP id E6A96B37;\n\tFri, 22 Sep 2017 09:44:33 +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 BA094A7C\n\tfor <dev@openvswitch.org>; Fri, 22 Sep 2017 09:44:31 +0000 (UTC)","from NAM01-BY2-obe.outbound.protection.outlook.com\n\t(mail-by2nam01on0040.outbound.protection.outlook.com [104.47.34.40])\n\tby smtp1.linuxfoundation.org (Postfix) with ESMTPS id 3E56217E\n\tfor <dev@openvswitch.org>; Fri, 22 Sep 2017 09:44:31 +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:30 +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:30 +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=g687u+/dNs66qKUu5YKSKOEL9KB/Scl7gK/2WB0sILk=;\n\tb=AmQpf5oSybzrA6UjYSn+vZxtYtlB0S/is091pM7Q8pF5eG8CrjiA8FUG0Ry44/3oyIP/ZqJE2jVzAXom24kPtTSqoAVFZejwEou0BU8L8Upq+gM3el4dyu8iyHJ61HiHH0vKSr4g2re14CUspTJegMWZERWxgH6SdjzIo+1PMfU=","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 06/12] dpif-netdev: Use\n\tDP_PACKET_BATCH_FOR_EACH in fast_path_processing.","Thread-Index":"AQHTM4djkYelCU6kSke1iGGZSr82eg==","Date":"Fri, 22 Sep 2017 09:44:29 +0000","Message-ID":"<EF176FA6-23C6-4A68-8E40-B39BBEC8066B@vmware.com>","References":"<1505913181-82547-1-git-send-email-bhanuprakash.bodireddy@intel.com>\n\t<1505913181-82547-7-git-send-email-bhanuprakash.bodireddy@intel.com>","In-Reply-To":"<1505913181-82547-7-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:QNFzDkljVau6vfFxl9klaUslgjeq2YXlSuxmedbHPiXrqfozCt8yKCiRMOytZoOD/BDbh/kaBD0mTdklQXOzUHvrP7lr3LehS5Hb+YXVPwfTETriyvJ9w8NRlHdg+inQeXiYw6tHtLWoZ/EbBnzBxY3nmkwCHT3k8dLGw9yuCWs=","x-ms-exchange-antispam-srfa-diagnostics":"SSOS;","x-ms-office365-filtering-correlation-id":"e8eeb6bd-09a7-4b11-4416-08d5019e85a3","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=\"AmQpf5oS\"; \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":"<MWHPR05MB34064CDFF3F04399C0616B24C8670@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":"<0E093C2AC7457F4F9DFE2A547F088494@namprd05.prod.outlook.com>","MIME-Version":"1.0","X-OriginatorOrg":"vmware.com","X-MS-Exchange-CrossTenant-originalarrivaltime":"22 Sep 2017 09:44:29.8823\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 06/12] dpif-netdev: Use\n\tDP_PACKET_BATCH_FOR_EACH in fast_path_processing.","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"}}]