From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR03-VE1-obe.outbound.protection.outlook.com (mail-eopbgr50088.outbound.protection.outlook.com [40.107.5.88]) by dpdk.org (Postfix) with ESMTP id 095395587 for ; Fri, 30 Jun 2017 21:23:48 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Mellanox.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=cJZP8VD2qZfLjIQWGXVCT2f70o8L6fMMWTJoAXEdP9g=; b=hN4NqGQrheikTck8JXdgA09741VUki3M6MroHRcUdfs9fIJq9/NieRST8wXYHVI8Xz2EzXk7ckYutgSTC4VhSATIz2CfcUmaSbMuR9gHDfuFx4f+ZvpMlPttMxqPWlQQ9mSvB9wsUWWGOGsbPfWv3y7ZB28RaLu0eHvFxJ46n7s= Authentication-Results: intel.com; dkim=none (message not signed) header.d=none;intel.com; dmarc=none action=none header.from=mellanox.com; Received: from mellanox.com (209.116.155.178) by DB6PR0501MB2038.eurprd05.prod.outlook.com (2603:10a6:4:6::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1220.11; Fri, 30 Jun 2017 19:23:45 +0000 From: Yongseok Koh To: ferruh.yigit@intel.com Cc: dev@dpdk.org, adrien.mazarguil@6wind.com, nelio.laranjeiro@6wind.com, Yongseok Koh Date: Fri, 30 Jun 2017 12:23:30 -0700 Message-Id: X-Mailer: git-send-email 2.11.0 In-Reply-To: References: <20170628230403.10142-1-yskoh@mellanox.com> MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [209.116.155.178] X-ClientProxiedBy: DM5PR06CA0066.namprd06.prod.outlook.com (2603:10b6:3:37::28) To DB6PR0501MB2038.eurprd05.prod.outlook.com (2603:10a6:4:6::20) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: d75a7c21-4997-48c2-21fb-08d4bfed87a0 X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(300000500095)(300135000095)(300000501095)(300135300095)(22001)(300000502095)(300135100095)(48565401081)(300000503095)(300135400095)(201703131423075)(201703031133081)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095); SRVR:DB6PR0501MB2038; X-Microsoft-Exchange-Diagnostics: 1; DB6PR0501MB2038; 3:LrKwUxvEhUPSXHJK4pxPdDVFN32tsQCGuBL+e2gHm14/bwoeXjtpOf6Xs5Dr13lSJJRRmkzvs3mBYU46jmYleiZ5PHHJlFyambmTDY3dftqICHUdAMY+0cEgRz530XxuyXUu5RBSHywg9MS+8oOSK0jMZ9F28D8woeJNlHHiABf4g/8NnwOINimFkLlgMCnHq5ysIkz/MMhbCSMaMb9bpppxyL/S9Gl7L5IGwG2kukTpNEfZi/sNc+pncIkzgVlQFeAB2lk4789vUeNsSXSkHTnGJ5LWr8Yhtt7lD6JS02QNxaYbAjcUb7K1J2f9b7WVNxefLp/+aZ+WOJhLZjvOMMjgHE3Op5WNR+1TQ/Hyth9EnSptQLXXkkHkqUX+PsHVRZdb2lMJMb/tsFL1NAopvqSggnrWNx313M7mV6njUoXTfO3yrZPuDv4uHOqLnRC6ApVUclJiTmm7ekxI8QLp48zDWujhTt5FqbpE6FL3gJQ6GbfHByYjQr8Vt6Y5uLpb5MSF5yRyCaTjcILF0q6DnVDE+W1bqC7I3HBu/CfwCNiDvaW16+h8RbI3fmBVdcUFyYqxMGwupPhJJ5OznGI5z0tiJneT/wtRAEfPlXzPLBnRn5mfQcUJksr8mTqKCmV0b693ieevPYIKNNefxjtQJjCz0vpBfIj01pnRtH0G6x69a0XoHocfb/iV6sjYOLpw5mzZIjumaFFI0REsUyiDY+WdTZj3L3rus8YrX9bOxYZx67hpn22dUOuSIH7CcACmtYtEcUoBRdvd7TTpNAEbsA== X-MS-TrafficTypeDiagnostic: DB6PR0501MB2038: X-Microsoft-Exchange-Diagnostics: 1; DB6PR0501MB2038; 25:jCVn4TXQz3s8/FCO0dF7fobVsNRKECwdpcTPMY4raG4WObVJsZDwQSDI6t332w91UlacVIEjVL0htsYXFv8lpR07Ny5zHSaTMykmZt43hovVxWT5OUqRVtf3XBNHg2uhiWX0xdsTiZT+DmKMVbgYeu6jD/FQZh2TGBQc0UOaPoT3GeR5rCLPSN80b5qA4jFmkXjzQtSJjnCgXP+xZObOy5C9M9kWaYvjRUn4s+tj8/bt01y7vqSmXkaOrAzhDjJegvNDHWym4Nm7iqD1lUH6A+ukIquw7i5OQzkgXYLT2pSn+eMIog5NmX543Lb0zrTW18s1YHkHl2Paem69thB66J0jFeXl3YFII2L5nvM8YUJyohQF/A3yXASqM8nF+Ho0wUAgyt1mH8+6grr40JRx5EOy4WMH8y05e329+3MYH7Sh/TEfWpCewUCua5901Ac05em1O0ZLIc/Uq9HwI6eWaYRsL1RKWvCMR3H2XpozI9q9tVAPOeEWMZlSB7CwzV6dBNYy0ix6QIdTh//OsYW1BBljvaNMAAaLcAAxqJhFXlPPLKU6vcD17HATtzebt2DTES/nzsve5sbTUOK4wDKSCyRp+3Y3UsbKNckqzx9cTamzMZ0pnAd4vCaJW4K3ZAqeZzAl7mDlSvQ1L1YIw5Pfn8c7KHEx6SIQdY3ea7CETfCIoUrp/NpwVqI+JjwtHUcI4eEHhMxGXcBtyRzKS5wFiWEEtxhI0pFXizaUvS+9ElIx3qEivX4VCvYOU1WqJ0ealoXcCmQbEF8pkAAKCNAkvOOTJXfFlOK49CHSW7zTCzh3SnKgxuqaDx/pH2RDLPzEyR1w6JFRqJw06O72irVUnuwk0yztRcxt4kuZyJKbrrzXTEKqDw0V1hrNXmAbHRn/RI9UD927avEVvh5lS3F0STKMFisM15+G5j5NIqTDc+c= X-LD-Processed: a652971c-7d2e-4d9b-a6a4-d149256f461b,ExtAddr X-Microsoft-Exchange-Diagnostics: 1; DB6PR0501MB2038; 31:kWbPBBw0QFT684Qg76QGHjswJOj5At0l0zQTi4QPrTJ96kFIYj43zPyZvZA3UDjS6+CySMtYIAfVQCRmOwQJ0PfHakkngcXalrydhP4r5Q97mlU0KdAc/ZChUE379SpLOOAl92I6hh4zx01YxajRWz1wnHB9hLFF+dAtj72NKVjbhtgwCRN4Y1Hl/+xgUC3F2I6Kgl09mU5D+38+JSuIjpbvGY+MjF/e743rVLOl1QaW3N2XvJlZb97wjmDAg9qSY27D5VTht94FRIkPz7wDfA47jhcqorEitS6lo7azyWEX6NSKmFHTfnXYMJ5FDHeflomRFSRsUQsdOBJNbxq62uTJbkpmMQ3LYMqEzK2Ar9lrZEkY0k/q0DDbUsbcBWcqnC7PUuBhmn5OSvAFX3hlDNsBpto7O5RLwoXQSjhGa4yv79HHnvcmJgoAIP6Eq9c11bKWCP/CC7m166L+5Z7uPY9k4qdZit4lfR/+CUfcr0S6yCGhpGiD1p8udfMCQ6ulWRzzkHCXGS2yq+zKHjLJvUEp3MfJOQdEGVKWoezyqLvpS+0pWAQhQAgvvAT8C+jWE/BfdYVMkY9FdFEw6FzorXIKe5pWvmuZbNIaRjvqeUn26q8WU7qLao2ldWxRtagfdzM5csoXRwLgrqldKkpYd+i8lqR0DsUCor7C5w2WKgMUSIxS8Sf8JzKrs9zG418hKGbErlSus31p1D9VyQsVaA== X-Microsoft-Exchange-Diagnostics: 1; DB6PR0501MB2038; 20:McBav11EPUIo6iXzbHAsB9tAg5wSUr49kycMAndClZi0XXIpWX/moVfNto3zIz+3Vzox+sy57g1VVHXVBcBWRIGaad4McEeOl/CHkN9ShGwE0jRPhYdyhmGwdfIw3SyI7j2us5NM1tjY+NClVG+0zcBt1pOlfu0Zvaq2PILF+2E3U7i94RzrlPzD6/+Vblj4Edw+xPKOFZ22NKrhqO/lR9WzXB3+8t2ULnZv3JE4NR+UPqpIsFdU/ZTn6wKPU5ehkAk4SpKyS2ao4TxUKEwl3FOz0S7cF/GhukEG9VJC2AueF/zHxQm98r/a8VrCkM9VZKCETU+lFScE5YsOgyeQ9wJIGNrT9ZZaYYn0Y3c3QIc8GloArN4eDZT9KQfZV3BcyFJUp0ZmxV2OJDz27MR1DkNga5LZCbCCsRyFccrcuDPXdRMANks/+SUHQZG3SOYUD6pyv8gRG6gyHnrBJ3UquCfOQNttJ53MCfLAgFSbpSPDJ32IJq98hh/VFGJiDwtx X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(236129657087228)(167848164394848)(247924648384137); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(601004)(2401047)(8121501046)(5005006)(93006095)(93001095)(100000703101)(100105400095)(10201501046)(3002001)(6055026)(6041248)(20161123558100)(20161123555025)(20161123560025)(20161123562025)(20161123564025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(6072148)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:DB6PR0501MB2038; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:DB6PR0501MB2038; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; DB6PR0501MB2038; 4:Z90KKulhtMuJW1ZEhMyBoLyVeT0zMm+i1x9SYMIQ?= =?us-ascii?Q?EbJqoomT7+ifVSZRrfOgC8zNMzqDgC0DcnM09qUpLpVP05FgXeLM3b25MtMT?= =?us-ascii?Q?lSmSJbCMU/B2sPFpSoYe3C/L7101Zdaw/ek+qRzafQikMeXbjOGMI82ZwrM9?= =?us-ascii?Q?2NdsMYFFCs67oVqGqCAKF1Pby5cmRhvcdAzBxEkKofcUcypNzCOIuKlJ9/Zl?= =?us-ascii?Q?Un6Cacyor0ABR6XVMYrYbgo7q6gUIvBgy1GS/FRPAoCthEVjdzo8MauKlEPa?= =?us-ascii?Q?Esw08/JQLvEeoZh21bWMCVJbiCykYkp+v/vJHm15YWn9EUTY4Wd+t+UOmMgb?= =?us-ascii?Q?ig3+T5LZmSAKYdRzB5qqfriCUZJHrASJ8Dc2Io0TT0ikJPHEdsRYTmPDaO+2?= =?us-ascii?Q?wCj0QgwNwJdEjSGER/IOg9cbMtMFGKvLlSgT/47e7JpTB+/TlakCPuGme9UL?= =?us-ascii?Q?+eWjOTQXr4DzVk6l2kw6vqPOHCJKzUX0qC8kmUzvgm680vVSBZG+XgozF0xD?= =?us-ascii?Q?twEOQn0xIYUgkVbdgLiD86ga1Ru2bcV5bN9/J85eahWtAx8EvcVjDlrHi/vM?= =?us-ascii?Q?9HO9aOOElsfRGeErE6L54sIOIoSkbKJA+SCzuwUAy4kWCrklenah7qzeig8Y?= =?us-ascii?Q?9lX5EdMgZLlJtkQE10b5qaJ+nmKTJ+NVbmqdNFdQp1gynUfVhysUksQMKlvJ?= =?us-ascii?Q?6AWUgamhCoyEWDrOZeVbVI7UgnQfFjfNc6cbAoEMYF790Z+0UFO1jCHGGT2l?= =?us-ascii?Q?0MazAQ3g2xzp/Hq0kqtvhiraYtrjByKStrx+UTm9UlTI3RznKkc0HtEyrW7Y?= =?us-ascii?Q?m7EvZ9VEqOPZKGuV1hX4+tnSjHHODgg9DWphDVZ7uwabPPalhsIXA0Zk1LfG?= =?us-ascii?Q?sHf6VDlnfGVDi0uJlvXlL9skPNPHh5aRa6Fr4hF6Kce/etJrfyAXHEg7xs+5?= =?us-ascii?Q?bhGdrHhmRwfJaPZGA5gcEF2n61paVlfyoI1kJSAhobZXkQRmsxfK0tcOM9yz?= =?us-ascii?Q?KdEYbiLYCZ0bujQhDhS5Sg+lnx9hU68YsmMGSoF1llI8/LAtvquPxBQ2uyOZ?= =?us-ascii?Q?mRMqATX7kGm4qQLo1CIm3jaj7OwMatjzmyGzUWc2rcOoBL7rYSOIzMxt0Y5w?= =?us-ascii?Q?i2UcpreqlvC3GCMvQpevSKoYhFl2y0OHSZQAljMFIbt9N+fq2uARP/enDelT?= =?us-ascii?Q?0wMikhQ5TdIZizTfqP14VHaM42TldxLYWrOm8abF9rLbSojEQGzRZ/oFkSMi?= =?us-ascii?Q?rcYLxnK1lBqEJukxib1wHTftLkmN52B9rEkMigiB?= X-Forefront-PRVS: 0354B4BED2 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(4630300001)(6009001)(39400400002)(39410400002)(39860400002)(39450400003)(39850400002)(39840400002)(50226002)(118296001)(3846002)(6916009)(6116002)(305945005)(2906002)(38730400002)(8676002)(53936002)(48376002)(107886003)(55016002)(33646002)(4326008)(5660300001)(86362001)(50466002)(81166006)(110136004)(5003940100001)(2361001)(2351001)(7736002)(189998001)(25786009)(66066001)(50986999)(76176999)(2950100002)(36756003)(478600001)(6666003)(47776003)(42186005); DIR:OUT; SFP:1101; SCL:1; SRVR:DB6PR0501MB2038; H:mellanox.com; FPR:; SPF:None; MLV:sfv; LANG:en; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; DB6PR0501MB2038; 23:LImT+LsiDaLSZ20Dc+8ayRv/9bz3gjuOvvfSTSx?= =?us-ascii?Q?EIUoBRLsZoASz18l4Oxj3hbF8drffBDPGUBpOfkrpf9W+mhJJP+sUqsvCpUQ?= =?us-ascii?Q?Bdmkt0Dv6kS+mB+3wjvEc6xEVIuHcYeMT/s3tNUVh4KhSSxbvUd0SMLoqTXl?= =?us-ascii?Q?/bWIBFTvypm8/WaOxvVHXIOwnCRA+gjaD9CKG7Kghkgl65NoAtkikFQ0EQD1?= =?us-ascii?Q?vS9nzDwM7bsvd3acFPDeiXOtDxGxvmOWmyokpFVVA6eCEb8pLvQkKt7nrTsz?= =?us-ascii?Q?IldEyHt3ghBE9ewOI/LGFuNAERs6Vi8vG8DX4GyOl6ChXJwB9Z3sZm4je8j+?= =?us-ascii?Q?5EqhKVWRLq4pcLJT4+98Uwoa1X/4LrXWcqddoY63XJI3P4Sk7ku8dDE/DE0a?= =?us-ascii?Q?rpF4M3tlZRh2KPmMDO/l05YSQpsoBKf//WKfkq07HlOEHnzB4E1tFQ24649q?= =?us-ascii?Q?pZ9rNkcTvpuXyoep2wNY9WVpC9uG3hHqQe5Dbej2B9ni3q0HneiuP1+jiXt1?= =?us-ascii?Q?Q2CfKbLGM1o5aOCtGkJtZ1ZNDTvV0Velt3MKnz4mDHAiTEu8w1qM5o4ravEZ?= =?us-ascii?Q?NwuykybHvKHEMb5oSMA15t86JNQYr6Nl5QxCg6Fsacvkp5NU/Mv0/uljq8E0?= =?us-ascii?Q?2fzJiOuco3RblRnas3NPc5iScWhn8eE8Y0/k7xrTBoU4xi+RJNOR+31CxMMZ?= =?us-ascii?Q?aBWDwXBueK71wMnj6fXtmduB/hTTZBrByQioVx0HAKeLLKJqaqs6M8uI+KV2?= =?us-ascii?Q?FfpL/D+eWV1RW99m+P71glIi8Iim+VRiLTbJUuSbPfMkNGikApo1+KQqL3BD?= =?us-ascii?Q?yut4F1Z4XcOHIugnNWHABgLQllIqKsgTtUexPTk6wGUnLmvG+rikRjgicx6o?= =?us-ascii?Q?Q4PdpE9ViNPMhPARbACE4OiZV9kUt3a6tstXJXFReJXHhpb4iOwJWltI9jAH?= =?us-ascii?Q?7SXQSXrV0kmkFoFJW0ELOBbG/URRmLQacDD46wixK5Q9Skwydy/j/LfPBtVl?= =?us-ascii?Q?ylF/7dmNrSB1a2nCBiuZKQZXsCiLtNcF1ix/wBFS3yStUuKGGuYQROJF0wcK?= =?us-ascii?Q?GRq18quL9GDVokEqxygwxH+aB2yfDRhyPvkYAalv6/5FsgzMTuA=3D=3D?= X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; DB6PR0501MB2038; 6:/f0MgnoNEFzK3rgUWR5QzdxCaewj4lpNa/C4M8JW?= =?us-ascii?Q?8u2hGXYpVGCuVOkYpnqfiTs7tc+rFxRGpoo68LFDwQ31d3GSGq9HXHcmzjqx?= =?us-ascii?Q?nEAbdv39EwCsQn6wbb/ApgE6Jp8pfhk6HMhScE2/NaeVZEi0IheblChgu6hf?= =?us-ascii?Q?vQREb+MaCAyIq77cORwjYoFM2FR+Kvkq7IxFYcdcqWPm+apVWzhoaIFygSAZ?= =?us-ascii?Q?uwvHVJe1jlrF+FaTuZfsoaE7Ag/RT2ujd0gH0YbszheOpVSKTqBEaOBoTdvq?= =?us-ascii?Q?Urt/TfKwrh+rw0viG10gVXWhjdQbwDzneUqxooY5t8elVHEii94Ic2dMO7Sp?= =?us-ascii?Q?QfkbKkGAqi/4xEVqV/MluqAo/J36/vqSwISCqs+TgDt2wNC6qesgksJ0zbBC?= =?us-ascii?Q?EJL90X0AStSKP3t9QUZzjW4aOxJlVDAWS8YpFoQB/maHS6qk1In/r0WWdb5c?= =?us-ascii?Q?CXRSQcuQIdaCKA7njsylpB9PK7Qyd131xVrAy6odd1Z3KWGhN9eHd4/z/Me1?= =?us-ascii?Q?sMmJzuBgae0zRb7aw5gwCiLtdZ+1jT0Unddkuh7PpD54IvrwXExVE8I9tsgG?= =?us-ascii?Q?pJq9dQO3j6HyhqjsAup9GQEymnwzOpHp7qdJJpZG0agcOYR9wuxUAw+68SaK?= =?us-ascii?Q?VgEFi1piFZfTLmMFAaHrXQWSgDoCjUdZMUmJALTS5EK6fUMGHivdBzd14afk?= =?us-ascii?Q?ahm0ie8mCM0oor673Vlru+o31PDwDwVT/wBem+azUMqarJIyPdJ2agI0k9Hz?= =?us-ascii?Q?r+l00f84Ww+ARLaCfNIM+KwoakubNuZcgijct76KGbMVpXi4p/wldv6wJdQl?= =?us-ascii?Q?1+l70CptctKl6gH6PwborHCTbtonexnChzfmSfAsyJBoakTp+yOoYEFTHt9c?= =?us-ascii?Q?7ZbpxRRpjAjVteM8iFuq08iVhtGKGLB7ELGAo3W+Uyz7ITQCkgA4PJCUi8Da?= =?us-ascii?Q?QQSCvDT5liqQfJvlL2IQS0jf2IN634wsaM4IpEvHNx2u//119E2MUbNaLog/?= =?us-ascii?Q?6m+dFfRZIENkh0jBIbJt8OZV?= X-Microsoft-Exchange-Diagnostics: 1; DB6PR0501MB2038; 5:psMpQikO0EHuuLQ58g03rfU1F4B7gwdGrE43caCVjouDBrazLF8+hgvMfMoKh9v1bZ10JOUvPCZdynwuqQ6y336wLrBT3uyxL+0iz0bCW8rbga20zpy5w9rHIfel76kdx5l3KTqhQtToDofpRDER7Fwm5AW9NV82QmcZ4vcEJNd3b2d/OHa0151gpggNAyNmdnUl+9VAG9gVHYlWgokkUOviXkESdQTWD0LgwDF67ca2nYNmzWribXKQkcvs9bTtDEEfwYAubnP9eGaA0r0GP0kOYuFwFd1PlenEsJ5d43xdQ5P/vd6GSgCwIVSMie3heawBULhtgpG523LgDo9c5nkcpilz/+AZv5/ibbnhJylFfpElSDAiztkvj+vJQmbGNd2alO4XxJZta0vcqIiweWEcgLtVoWJqTPnxDWwzHsh6ZgSCp2Uxq9daTeEnfBlin58VJGqo1WKhbI8+I2/qn+5cGdgC6IlrNq0fcMDyt4xZX3c92QLNaOmpjAEG0sCK; 24:fTJboZjSYkVXjRDcok65FCcWOwwVENf9LjyFfbdp8Vwu4qAGid96biHBuUKDASoK/O6OjiAfaHjwqueSsEsFE7gJe9Mvn1KIEzcPb/RJEXc= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; DB6PR0501MB2038; 7:m3Hc4HZyMbwExk8/XMpNwxoFcA9Ab5Q5gSM6Vp1ffRosHsn4YT/pYz4hTUG3oiBslls3ZOk8jRCMyqMiytBZaOSMoPHam4tg1DiMk7nBLGPYEJrN4k7CNjQqFLTc+30iCMS1XAZqNaVjOnv8Ep9gR+sdeJ6QqaFOQ9+aOOLvHG8NNtP2GFSev+8AB/g2KDo/eCn/288kPC75w0PrLuTFdBRQpOFtZqto6BbDI5ZcPdDPmBmROw2L0HdNRVofpWC6uO9DtyUXpBVslX9Skzp0soAk2OPyIVJk1DCtHdcQq/IzBr1WaDzYQlX9SQ9dyuh+dDS7RHRz5hfxubNseP9wL4+uM6kH0/gN0tWtckZK+D7VpIVKz8XwRFrbrhBYWaWF0pWYlCMEMwIW+Vh9jvGppiiuAFVIGtR4DDu08YU4uvPp2HTZVdjhQXETEQL8gaSpu2mOCxRup+02kI4GRUpQKp7gvMP6Yrct0y5I55a7WbGO8sn1Ms8xapCmPfJBe1Ogz2FVpAeZ9YHdEBAPN5OEcs19Tg3R/i4PrJ5L/nt3JxrAx51XgTEJHKs38KiZDD38ms5eBShPSK5E1dRoXx7pfE37Q7XHhZIZ88uCH/8v3TS9zUEJlNJZKPxMeErsjs7Hl6WYqNzRuoh/GlSxbj/Gyc0yRQMULQ5shjW3tBvvxJuAy22MQcTdnYJgrWwdTs+JigqnJhoiVr+uXNbob3ouAUHGxvyl8a/cMW2cObDfXZvv5FOZubzmeCvYs/+HyujBbGKYMQyjmEEhh+A8ucEbWtMpSD6Q8XVAnCdM4SGgJag= X-OriginatorOrg: Mellanox.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Jun 2017 19:23:45.8265 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB6PR0501MB2038 Subject: [dpdk-dev] [PATCH v2 2/5] net/mlx5: free buffers in bulk on Tx completion X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 30 Jun 2017 19:23:49 -0000 When processing Tx completion, it is more efficient to free buffers in bulk using rte_mempool_put_bulk() if buffers are from a same mempool. Signed-off-by: Yongseok Koh --- drivers/net/mlx5/mlx5_rxtx.c | 33 ++++++++++++++++++++++++--------- 1 file changed, 24 insertions(+), 9 deletions(-) diff --git a/drivers/net/mlx5/mlx5_rxtx.c b/drivers/net/mlx5/mlx5_rxtx.c index 43db06ad8..66593679f 100644 --- a/drivers/net/mlx5/mlx5_rxtx.c +++ b/drivers/net/mlx5/mlx5_rxtx.c @@ -264,6 +264,9 @@ txq_complete(struct txq *txq) uint16_t cq_ci = txq->cq_ci; volatile struct mlx5_cqe *cqe = NULL; volatile struct mlx5_wqe_ctrl *ctrl; + struct rte_mbuf *m, *free[elts_n]; + struct rte_mempool *pool = NULL; + unsigned int blk_n = 0; do { volatile struct mlx5_cqe *tmp; @@ -296,21 +299,33 @@ txq_complete(struct txq *txq) assert((elts_tail & elts_m) < (1 << txq->wqe_n)); /* Free buffers. */ while (elts_free != elts_tail) { - struct rte_mbuf *elt = (*txq->elts)[elts_free & elts_m]; - struct rte_mbuf *elt_next = - (*txq->elts)[(elts_free + 1) & elts_m]; - + m = rte_pktmbuf_prefree_seg((*txq->elts)[elts_free++ & elts_m]); + if (likely(m != NULL)) { + if (likely(m->pool == pool)) { + free[blk_n++] = m; + } else { + if (likely(pool != NULL)) + rte_mempool_put_bulk(pool, + (void *)free, + blk_n); + free[0] = m; + pool = m->pool; + blk_n = 1; + } + } + } + if (blk_n) + rte_mempool_put_bulk(pool, (void *)free, blk_n); #ifndef NDEBUG - /* Poisoning. */ + elts_free = txq->elts_tail; + /* Poisoning. */ + while (elts_free != elts_tail) { memset(&(*txq->elts)[elts_free & elts_m], 0x66, sizeof((*txq->elts)[elts_free & elts_m])); -#endif - RTE_MBUF_PREFETCH_TO_FREE(elt_next); - /* Only one segment needs to be freed. */ - rte_pktmbuf_free_seg(elt); ++elts_free; } +#endif txq->cq_ci = cq_ci; txq->elts_tail = elts_tail; /* Update the consumer index. */ -- 2.11.0