From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR03-DB5-obe.outbound.protection.outlook.com (mail-eopbgr40070.outbound.protection.outlook.com [40.107.4.70]) by dpdk.org (Postfix) with ESMTP id 55771377A for ; Fri, 30 Jun 2017 19:50:12 +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=Tq9HKJVOViU7M951nhocYK8HjeSdhgGfDIj76q6Pxi8=; b=jzjS7h0PGNWJneVqFN7QZ4hK8PUBWn1qCqz7DrL+edm3j2wT8uXR/rAZeywgDVxh/JRdehK6NEQfSEPKjUW3EnxHYNaKnj/Qs92Hh6+3KLxZxoPY9Rjx07ySEzon8baT6TpMW+FQSDxVXWPXxO8YCrPtwcQx9kWIieS9hM8vivI= Authentication-Results: 6wind.com; dkim=none (message not signed) header.d=none;6wind.com; dmarc=none action=none header.from=mellanox.com; Received: from yongseok-MBP.local (209.116.155.178) by AM5PR0501MB2033.eurprd05.prod.outlook.com (2603:10a6:203:1a::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1199.15; Fri, 30 Jun 2017 17:50:08 +0000 Date: Fri, 30 Jun 2017 10:49:56 -0700 From: Yongseok Koh To: =?iso-8859-1?Q?N=E9lio?= Laranjeiro Cc: ferruh.yigit@intel.com, dev@dpdk.org, adrien.mazarguil@6wind.com Message-ID: <20170630174956.GA911@yongseok-MBP.local> References: <20170628230403.10142-1-yskoh@mellanox.com> <20170628230403.10142-3-yskoh@mellanox.com> <20170630123047.GO18305@autoinstall.dev.6wind.com> <20170630124321.GP18305@autoinstall.dev.6wind.com> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20170630124321.GP18305@autoinstall.dev.6wind.com> User-Agent: Mutt/1.7.2 (2016-11-26) X-Originating-IP: [209.116.155.178] X-ClientProxiedBy: MWHPR18CA0031.namprd18.prod.outlook.com (2603:10b6:320:31::17) To AM5PR0501MB2033.eurprd05.prod.outlook.com (2603:10a6:203:1a::19) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 71f79f67-d3b2-42b2-4fc8-08d4bfe073a7 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:AM5PR0501MB2033; X-Microsoft-Exchange-Diagnostics: 1; AM5PR0501MB2033; 3:7uuKTcLhe2qMW7kzzPxr19vYSAzM0aT3is7Bcf5ysqN8W7Dl92rOErTKoByBZR2AsYqkeUZK+XZBEXF00McT8AOHOIV4tB1P91QD/oKL8BZMsvcygFWSd8mKmD0XhkSNWmUVC7yyPIz0SVZJmJ2IT0ybWVuP1oYNjen5P+pW1o0c0OWPb4xXQmxahwZu4RS573qF8gdNh+ONdreD/UXE4BAneFzKjX6MpmulW4PJudjt60zUf+7g/90aO7Ia7dLZ+RVSR3UiY655ON1XDMRYSZjJjr1cjPraaE6567URr47QXC6QeZK45AZqrAiBLdHKSXiYEBbTNEw4OLhvE7ZV7ekJOQzEy0WVoLw6fg7pobq9/YQJMocpVfWPvtO0g7oRHl1uCMUgSDHqi84FZmcALPYG6VHf2jQ4W1/nNhC9Ndy8qjK2uy5fP0792/R1ngcr6EENFivd8LyFx62AnSIrVGd96Ba9qU5Lyd2GUOqTXIUjS4ACB2m0bPKHenX4cmFVZwVSjdjBGgGoHu2GyLtHR1C9do/VHvIrcBBurR4s1DiwCYj8CBIIMqF4ktcOZQP3Hf7wj4KoMGC6SfkCKNKMYP6l93aZYkXeVgE1PpGZh/Aucy0GUn0KJfVZR6OSUbejBIleFVVN3qonJ8QW/fO1RJAra/9IV29l5X4vzpGX+eksHY0AecO7rOpbfLBR8h3IGDg2Nv0LHOodIXIl6Q1ckIYWKMhjrCqNrEanY5nrjhBBY1NF/Db7f+VtAHzdOmZGpBayrLM66+NoZZplruhmSw== X-MS-TrafficTypeDiagnostic: AM5PR0501MB2033: X-Microsoft-Exchange-Diagnostics: 1; AM5PR0501MB2033; 25:s+8KhW1GFc78ZEJaHlrQPpsjYq9C5QEw3OtX6OMadhY9rXAkTEerl8l0cr8bI6Jn6qQ5fLRlQMAZtlnesEp39fhRSBU6blE2vFNgA5PB3PDne12GQolZhAqbx/ubSi63V5Knj38FusgAIUgaGc/DYNR5gQli4PBK0xrLiNfjoRS5/2jM94C573cvFXeRiatv8W88SbXPiUWd9g2PGnAbR9BTCyBAAuekZXmw2xq6hvMB9Q9+f5IScog/ig7oV1uBac7ZpiItjWxn65nH8telEDBG7Rjsx7OgwtplJf6U2byKH2Fu9lzTagITWYXWpZL6vbUsjuCEJ/JzsZQi1GygdfEepJp8BtS4JJXUjWfHXiCj/PRsu7sgnQMy733I/wrPUfRyeTVbCFSriBHFmhXAV84Xp9fpft8r2JDm1y8X329PvSszputNlczzC/uvU6j8IPukw4ouMJwYy/u9GPVb1Sat978ZXUwW5xgXenfGNy8V9C1DZMuUNjuoRddAOKhvKcV8UcpWDAAT4kEF1HgmGvJprJRpL486uociPATfk6CevgAFajmADA5W8zk1WpYHd9fAaeNea1q5QDn9Dh59hefx2tksLlG89hd97r1hu61AIois00TSutPPnButKDy99caXsu/f65Xpf/SXD4nyRdVXsFH4Qc3xcKdT58p6oJKH/YGVNTQU+LZry1WvFKhCqJ+uEaSFvK1Xxf5YU9YnqURWNEzp9Dm1DoEdVSU9+bo1TB9TubQmfklbxBGLDPcS6mSi8fT8uT+gJuGx1raPT7sIT3d5yHA873sLJzqT8zUekW+u8e9Ar9Vo/5jIig+OpQEL4Z2ZC/sTff33/FeCEM58ZL4NWGrgLOuqC5XRy6DVE/6XUo0wh8S0ei7OECikfeY3DY8VAOKqXi/jGMe4Nf4eoazDpBYT+BcakaRurQ8= X-LD-Processed: a652971c-7d2e-4d9b-a6a4-d149256f461b,ExtAddr X-Microsoft-Exchange-Diagnostics: 1; AM5PR0501MB2033; 31:FEHP5OjHhxmsGOqjmkWxxM3YH0FraJhVnsxXNjJOe+h5C1Il6waEO2C90ZrDw1+72hbcdeNgWFBxvZ58QfAxbxwBTDwrbASGv2oB2foHXEHAk6ssWrhMJhQLF7I5V0W7l2cRXM5rZsrpVaK8g02aw1/087z60pIZX6MR21Src6ehS4Sl3m9d1JaIkKkOOGBfQGNpUn/tlyt9vUt+M4a+3FAMqV4aTZlLM9BqfOJu3cb+tokIHNhUO/KlBXQpvpNgb7N3xAhHx4DSTlw8XQn7D/p79/VjWPOMLyMcnWgBi53PREMu/nsZf4EqxCwaXNB6mdxP6C8NFJYFXX5eWz0lREptxUZ15VaNOWJXhgObJzxHMY6RAlducGAGWR46gG2y/ddO9Hi3feLr3xTzY7+rT4LnsaUHFf+uHIfn2Nz/4BGEDWmYYx/j36mN+vCpmIeL61pa0k8hnjzifaUwZD64cKpv7EfmQotP5bT+stJHxGilfWDT6G+pE0EELaYZ2t0viGqq8knXmSAJ+HY3fpnOsTQzEDWqzxuxc/THvWOQuOI+AytgHHTgeIMDQ9afGhUUaJM+frZqV78KGi4nsXks6mFIp71s1wPy80uaiC9kLqoHcrRfIqk5r3cMxyOAO+LU6GQW2p8QdhkoYfU7C9KVIEWTA5zWfxILm5uRc7VTeJNv57HpC/bQs26mP8oXgCwo/Fs3inynQHTn1m4w2Ma9dA== X-Microsoft-Exchange-Diagnostics: 1; AM5PR0501MB2033; 20:LkuM2s4mjfqZkmc58qhCELtcRktnMIXXPMe+UHJzWT63MVNIzBc+ekb1keXQHaL3Rp2m1eCz31TxgvX5W4o+2qJ34Sn3q9vTyLeSTGtTuGSN2RjIjPVSf3vghEfleY9EmFxwV42ula2bzqvJ1pNaGxsCVD9H+rjqqZ/00SOvameXODh1cCu7AkUkvDAZfXXFadPas9oHa8nKZiVyxm+QAvR8z0VZTqKNFWTd+RuMN4vtlkznoJbbPiS3LGLQPVfVdJS+XxeCSHMuxKQj7X+CvoT8093nMs6d3LJGILXMYtGE3G6VJyGUdej5xx1dF6H2bEy6dEpu/XwHIY0qwaK39y5yG71c7ofOsIAhEmKmw6wfn7yb7W9Q1HU0hCVXEI4C0EPn1RhZKK1gm6cCrXiQBoYII01y46PMTMPghdrTiUvKc9XW7vUnPVtMAgiyMopePL/hwArPxjeEiJ7am6JDgbvJvBmex19OPj1667Kd5WaxWctmDv3wZRyqwpb1Z0pN X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(236129657087228)(247924648384137); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(601004)(2401047)(5005006)(8121501046)(3002001)(93006095)(93001095)(10201501046)(100000703101)(100105400095)(6055026)(6041248)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123564025)(20161123555025)(20161123558100)(20161123560025)(20161123562025)(6072148)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:AM5PR0501MB2033; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:AM5PR0501MB2033; X-Microsoft-Exchange-Diagnostics: =?iso-8859-1?Q?1; AM5PR0501MB2033; 4:BQ4gdl8LGUpn/tBSVGsR6Sde/9gs7cTl+cp/iP?= =?iso-8859-1?Q?k+jyM0wjTDk0sBXTIZJt7aOH0B29P9GGb7aBbK1JCLS2KmTCGgQIOMDR0a?= =?iso-8859-1?Q?KXQx9IBUrr+AZBlUmOnLgUn7CfaWkhbfdACZdM6OuAimgQ8Y1z4u4JGOrm?= =?iso-8859-1?Q?OhnduLHd4H0ZltgnuKxNgwXzv+uruaZBqS86iBqC3M5LOOb9iuMA8gXaaG?= =?iso-8859-1?Q?ACNo8X2uJYPFdNGaQP1M3d48wwLQ0ZecNdqwosBqM+hgcdV0bHst3HONy7?= =?iso-8859-1?Q?SOSriahhL6CgEKdCwq0rF2ann0OwDXat9Dq6aAG5mlvFRNDj2ZHKrTyPBj?= =?iso-8859-1?Q?qXKLCStsbtLE1IAEPjyeG9UJLOCJy+8YbIw4cIXjLCRclLjWa1XNZlM8pn?= =?iso-8859-1?Q?l8+hq0NKaQp1w3MFGWTttQ0cpjKP7u09e4xxbHv/fFYZzG6BMQHCjYyU/b?= =?iso-8859-1?Q?+SlNqz4KLZwWzttB4Woy3f1ffDA3FfiwEoZ+f7wYba/oca/LysxW693a0Z?= =?iso-8859-1?Q?6hOuM5rvH2bjjI5W+LX14ZnoNUrbJLPCA13jUzYw6zErkj8jNfXFP83INM?= =?iso-8859-1?Q?Ya1CdtMX85BWoGqW3aK/Zud8HHNc2raDlKNfnaHBfHPfs2bsKcYsOIdU1v?= =?iso-8859-1?Q?25OB/ShaOeNNr9CAENa+k3SNjtZW1RjwLBRcIynSFNdHlguFTlVn8lJ4kd?= =?iso-8859-1?Q?wQZ5Htxo/AU4T/TNvO5RXEsTaOLMrC3wZexdZ454s7fyGtN1EFV3GM5Tog?= =?iso-8859-1?Q?+SFk8cAt/uGn29ePZGzo74cGpKrOn/nYAKvreAMECTlsRBP40HbBz7fkuU?= =?iso-8859-1?Q?bWni3YWeWrT1MG0SODqG+wIGxyfv4X+RycsYvtO8cJQazDVVwP87R2rmcg?= =?iso-8859-1?Q?FfY37xfU6jlOXa1cTvpp0Nu0mfFYDEr4vMNmrD0tGl/Enr7io4nk+sNMTA?= =?iso-8859-1?Q?nVs/b4/Ft9k7gzAqvRpgQcACXtmQIxI8JMMlHPK8voGNGSF2ky5X/yoB/M?= =?iso-8859-1?Q?50KhjllNGmsLcHnjrLECLwm5jwyyVpRWlklUyTlJjHQVNwIhSDxDVnJpRG?= =?iso-8859-1?Q?ujJL0dj85itFRk+fPU7PvswNxg5m7WjZ/EpWEg/+z8GqFaMXjy5ly6wonO?= =?iso-8859-1?Q?E9d8q8mTBTYxvvlZebpMcGoa61Lvm4uNAwXCpkIBLXvReXPBwJnH2NI/SL?= =?iso-8859-1?Q?9EMrabMQM4uwJuh8TrMazBQD1CzwHxYZA4rwtAx2b6xjae8pxcWGRx3Rnm?= =?iso-8859-1?Q?KsQdqw5mM0CPf6BvinnnFMeKm6RJeIN2dpHFBN150EcUi6fx+MiJbe2ejE?= =?iso-8859-1?Q?ksc=3D?= X-Forefront-PRVS: 0354B4BED2 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(4630300001)(6009001)(39840400002)(39400400002)(39850400002)(39410400002)(39860400002)(24454002)(93886004)(2950100002)(6666003)(9686003)(6916009)(55016002)(229853002)(6116002)(7736002)(54356999)(3846002)(47776003)(76176999)(50986999)(66066001)(25786009)(4326008)(53936002)(38730400002)(6506006)(110136004)(6246003)(5660300001)(98436002)(305945005)(33656002)(42186005)(2870700001)(478600001)(2906002)(81166006)(189998001)(86362001)(23756003)(50466002)(8676002)(83506001)(4001350100001)(1076002)(18370500001); DIR:OUT; SFP:1101; SCL:1; SRVR:AM5PR0501MB2033; H:yongseok-MBP.local; FPR:; SPF:None; MLV:sfv; LANG:en; X-Microsoft-Exchange-Diagnostics: =?iso-8859-1?Q?1; AM5PR0501MB2033; 23:SXq+BkfBK9Cs9/+Rj5DmRdxdHFfnsdgBcML5q?= =?iso-8859-1?Q?jnsWAG4fZPG5ho4RTKgWK+w+swfx6DCM86crmEVVNh9wed0y6nGfEhXfrR?= =?iso-8859-1?Q?fLPGyZAfzVqV3P2UVDp3H6uULmrqq8f7+C15Q4hbymCLum2bJrU54mJoHo?= =?iso-8859-1?Q?g1aVuzOGHUsmbvgwR2JU8s67YhgdeuMqqIqpQKUmXNXypoBsHAPQysG+gC?= =?iso-8859-1?Q?I6SmNOKIfp0c5RM95J5B9LvpqNhOB95Mb7dGPpXwea4fiZnMCDeSdGYGlZ?= =?iso-8859-1?Q?YJaYlrfbds4Pz3gQkZ98VQq/jAdDPlvEvuFnBSeVTMUY/h7lhDR6tjs87w?= =?iso-8859-1?Q?1UT7ZElYa6UsIYBv4jZMDzXZQ26x3z3N7OSeeFsmxbKUWHnDUADFjsV4Fg?= =?iso-8859-1?Q?/O/A9t6A6+EafCSI4WmwqbmTT4ndsQKRrzah0fEQ7YF/lsJCgs8HTTEL/O?= =?iso-8859-1?Q?EtzxDVYfFW6CV1+sYFhbzP2UZKt3Xz0820FcDh1zWuIrCdg6JkvrlPTCr7?= =?iso-8859-1?Q?9yWqMeWanm5bePFEhtQPr2WML9HHf5yWSLNrgywz5uJ+9NTIXRkh0JyFT6?= =?iso-8859-1?Q?hHM85KBsCQ5b1atw47veyE+J2HCJOj4tSUlKjdwwQdIZ6lkcg+Bpy4P07b?= =?iso-8859-1?Q?FBb1w+xS9e1GtQugo9iKGKR5L7i9EzI+SCGno3SkY+8p3ZnalaC3DGIRyQ?= =?iso-8859-1?Q?qcy4p1QxJZCBRWNuz/W7HYy1EfEFiklrIlALRFdfNuP6Xxy0kGhZV86WGx?= =?iso-8859-1?Q?wbYg2tIF1sBHDLejbKPQMvmkxtK3FcV4aPtB2Mg4693QbFZcGV9Yk09TbD?= =?iso-8859-1?Q?6b9br3JjX91KK3ya/79fE/C+tVF2fCHMQI3StcTejS8m9Q/5Bh6sbYXJ9u?= =?iso-8859-1?Q?gcM9t2InRhm2dqntqk5HIyR16FXF5z+pc+PdDGpADZhUhESRJM1R4N1pKy?= =?iso-8859-1?Q?LwlvN6smfH9zMBPiqQTG0zVi/RaoqCei0cs/PVpnWFdiAckrki2P5n5+Nd?= =?iso-8859-1?Q?Dvs31jATnRgyz7WzxCvMYtNN/VVY4/TUO/RLfYnOZe0I/eum6gRp3OsVrc?= =?iso-8859-1?Q?3WLF3SXXepz5ygp/SK6dUfxCRgEDvFArMBgQsphGSfhwTDimJen0/sC+QT?= =?iso-8859-1?Q?+50GKr4w8KJ0Vllqh44gxO2AxkDACKYCGiByNHfECrpr/aq9ihXbc8u7IJ?= =?iso-8859-1?Q?cnh5gOXl1STwAcMATuY0GQZNTWlZF7InviqUMB296HWO0R+R4ZAP84ReOq?= =?iso-8859-1?Q?r0jB2MHVV0ArdkcnZeV?= X-Microsoft-Exchange-Diagnostics: =?iso-8859-1?Q?1; AM5PR0501MB2033; 6:mLo7Jcuvo06pI950kbupUHC4vuE4oW2RTATnWS?= =?iso-8859-1?Q?9ENtFeEli/wYGRVZ00tN98I+yWYWBN59Cbb156PmKD5mopLs+rRQTII2F4?= =?iso-8859-1?Q?Zmk8VQm+/xNCFeuy4g5vZdIrcRWhvgxLG9lNXtK/SDCjxpkcpYRW9i1eWz?= =?iso-8859-1?Q?OzaL+hMVXZJnAdGpKPOOd3q2mI6JBpa9C52syp2jOtxzWXsrWO7ZY8DFe5?= =?iso-8859-1?Q?Xe7IL7cnKS4DX/TDQqRKusMGACUgUH4PpKMOAWgQxyzXv56szJVnkz1cs0?= =?iso-8859-1?Q?cJOIBsX2xp8pF33ozMhdMx6N3WKrswdBGT/966MREBnekyADKwP/A36Pyw?= =?iso-8859-1?Q?70O6XeDJMbi4Eulp7Vs8R9BzWojJS6gJnnnRJeX+LGFUTgKgYXjiBt8myq?= =?iso-8859-1?Q?W1JizHlTTqCU9shekRAtKDOYj69TEbOULFMARt0v0m4WzQDRpjqGdWjg/O?= =?iso-8859-1?Q?RwKhhRrS89quT9HfiCDLOUo/bZzpx7Abam/jYZ5ignkJ97+nhM5jqS0F+U?= =?iso-8859-1?Q?Rv+XdUdpmGCKx99SxyPqPtYCfpZDq7JUJ3oOkl7cYwedOK4TYcRzGuU+7a?= =?iso-8859-1?Q?BM3BGxoapSBk0BnWl+YwNSsnb0vKIRZnimgescjZOs1d7PnJRpeDNTusiD?= =?iso-8859-1?Q?+DYB//RYsAYc0BH9mmoZ+Uyb1o3ShwU0TAigHGbu45bqVq9o9VFU1wX2cm?= =?iso-8859-1?Q?mrSSaCK4HG+uUYFIBbTSNTUV/0cDWKulnLLCUrPyLkuLzAMOpfrG2GyBsQ?= =?iso-8859-1?Q?jUr5DQINZmbrz7oq36UGY4rnmSP9EjouuubwNusnXyhVfqS1uZkxEQxXE+?= =?iso-8859-1?Q?eNrjLO5ZgpdByWcGd/zoy4n0HBaOvcAxiuc690SI+tKBPUccYLkddle28v?= =?iso-8859-1?Q?gAX4QZz3ARtfRp5o7CREb4abgkjAQihh80p8LlhWZPCe7rR/KRj3Jq71tt?= =?iso-8859-1?Q?mvIZtXZpfp8XvXjtihH6iTtQm8iLb0wI4AHkCRDOlggOqGDENYrlxj74I1?= =?iso-8859-1?Q?DLwcbHwtcGsW67rAaQ4BodF+qI4shqRzLIo/Qvbc+o8mFfDbhIY/uitYAQ?= X-Microsoft-Exchange-Diagnostics: 1; AM5PR0501MB2033; 5:6zBryupF4gy0RdS+0MY1YYxY0VG2o8sAhnpen9WxwH6oYSgml3fCNfVyYjNLjk2qdCCVhMclttrjTnrIDafPHHFhrPyexybudiyNL/FfjOeKTSHaT1DdKZB7IQ5A4yv6N16GHqo2l+9TiRKmbihUb7c5lx+058JqnRu91rMVUfehk83Nhu9RJIHwVJMgJa+aZ1pG7XlHgmsXmNoXBrx+2mF9OMsx8Y0FRCWngrh5W7LCwhQ+1kX0874EuZ7Tv+U13B46wQ5qrlSJQXfS3MTjJCNaKKlKIvf8TWGyIPvkXsj/IeKs7bYAEgSvJSJXJkEsFY8aLVdzAhN1dZCNya3quTr8bLga2+hUSpQqSiqB9DkDiUe3rDKIU2KVAyAeJbapZ5F1PBi/N5p9ZLO/IX1mWwOJFNUvkDr8cjVmkIZZPOfdFX9lJoA+0qimMau8+sPTqB9oZsUMNgXBgHb0WKN3gIoKqCl2te+8Li8+5qX7jrJyXKXUKrjqVfrC9OXWzFms; 24:hEANYXzedUWNGnO0/fiNvDcFLROOyiorshqOAVR1hvWV49fhpeJV1/MFnYR6Fp+Gek4fCE++PXpzbrdBkDxOJ5jD/5pa+4KfezvouQZxbiQ= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; AM5PR0501MB2033; 7:gEBBkdBNBQDn7TA4sJnMZep72wNQ7XBuJ5HHPkHIkoSHgLtnSk+7bV2Gpi+ENWRpktMCnlpqJDU+oDcpgiz6/0gZk2j5d3lEW9FrinGWFzh62JUnlMIJPTYrngoD1c+VU4Eg3M0wRgRw4j/Lka57R4EEJnKx4Invu7sOwy9Mdl5P0jnn6f23uP6+A7emSezQ7yAPnPQaK7TFpwK8k4O3isfkSQojwG8RIuy14nnxRS+g5+i1Kz7pzjzNL9uK1kX1QspqR8rN/UQYqmDp0auJBrSLKc8Zaiw7D1Hwz1i3v0qEGWeS92jABqbMQ8lg2k7QqaTD1vYCMiQMJ94tEL5Rdedu0a5C7gbLpYa0BRbxsF/JDnAlXJieJMzdFYFRW1bx1vybiuF0LngTiACjxbUZS+b8HJLhWHVhWBQR3VCX2kG1caCYqYIYnUkOSFoQKOwazoYgWVkAtXh1ZN+nEDMr92bRBvVftzAGZ4wTtlxHxinaRq80WH0cRgetCy+4+WZ4ZCTBULeSOkvxFPCR9gSvbqgXI/DBwE2+Z5aIauKcj1EN2vlVHeeCSFo7W4U6LWZdkNuCXJEcr6GHmSlNzb3Z2oGCPE6BwXgB5vYZXwnYcAdYL9bCSDtHcYhiAsOzTSqlt3rNFmzGfDd3WsDpemUUIvtCx/fSgXx7xFg0wN43PIqcl5GXn543FsaWTNgn3nBGdinH9vl7f7vJzJla9GfVVfxTb2qeCz66uPUzOs6OsTnLOIFnGxvSi4zRzyXajxNjyDX9vgljXsYN2Zw4MTzspXHGT0piZ/BqNjgE0OUkirQ= X-OriginatorOrg: Mellanox.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Jun 2017 17:50:08.9693 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5PR0501MB2033 Subject: Re: [dpdk-dev] [PATCH 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 17:50:12 -0000 On Fri, Jun 30, 2017 at 02:43:21PM +0200, Nélio Laranjeiro wrote: > On Fri, Jun 30, 2017 at 02:30:47PM +0200, Nélio Laranjeiro wrote: > > On Wed, Jun 28, 2017 at 04:04:00PM -0700, Yongseok Koh wrote: > > > 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 | 36 +++++++++++++++++++++++++++--------- > > > 1 file changed, 27 insertions(+), 9 deletions(-) > > > > > > diff --git a/drivers/net/mlx5/mlx5_rxtx.c b/drivers/net/mlx5/mlx5_rxtx.c > > > index 43db06ad8..d81d630f7 100644 > > > --- a/drivers/net/mlx5/mlx5_rxtx.c > > > +++ b/drivers/net/mlx5/mlx5_rxtx.c > > > @@ -264,6 +264,8 @@ 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]; > > > + unsigned int blk_n = 0; > > > > > > do { > > > volatile struct mlx5_cqe *tmp; > > > @@ -296,21 +298,37 @@ 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 (blk_n) { > > > + if (likely(m->pool == free[0]->pool)) { > > > + free[blk_n++] = m; > > > + } else { > > > + rte_mempool_put_bulk( > > > + free[0]->pool, > > > + (void *)free, > > > + blk_n); > > > > The indentation is strange here, free[0] should be on the same line as > > rte_mempool_put_bulk. > > > > > + free[0] = m; > > > + blk_n = 1; > > > + } > > > + } else { > > > + free[0] = m; > > > + blk_n = 1; > > > + } > > > + } > > > > This loop could be smaller, blk_n can only be equal to 0 in the first > > iteration, otherwise is >= 1. > > The first if statement can be merged with the second one: > > > > if (likely(m != NULL)) { > > if (likely(blk_n && m->pool == free[0]->pool)) { > > This condition is a wrong also, it should be !blk_n || (m->pool ... > > Why don't you keep a pointer to the mpool (e.g. m->pool == pool)? It > seems to cost a little to deference two pointers to reach the pool's > one. Good point. The following will be the final streamlined code. /* Free buffers. */ while (elts_free != elts_tail) { 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); Thanks, Yongseok