From patchwork Tue Jan 23 17:08:19 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Shahaf Shuler X-Patchwork-Id: 34377 Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 2E9F81B172; Tue, 23 Jan 2018 18:08:49 +0100 (CET) Received: from EUR01-DB5-obe.outbound.protection.outlook.com (mail-eopbgr60087.outbound.protection.outlook.com [40.107.6.87]) by dpdk.org (Postfix) with ESMTP id B1D8A1B026; Tue, 23 Jan 2018 18:08:43 +0100 (CET) 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=7a5KwezuyBs7/XpIa51XeDDEjYYd0JbR70c6gwmSNlw=; b=M13KO14dqYx6l6oQuFxWWzCjHjgzqa18nWvV8iYyLWal4tSUjKt8cBniqKgolHq/D+1JCAcTHA2XQ15+0aeYZBS+aD4SU+/ND7NlphgzXVlAg3YfKRsaNkuwe62FySkzc7XeuFsBEMdL0C10fwx3/Zgcy41Qaz78H7QjhE5tJQM= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=shahafs@mellanox.com; Received: from mellanox.com (141.226.120.58) by VI1PR05MB3149.eurprd05.prod.outlook.com (2603:10a6:802:1b::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.428.17; Tue, 23 Jan 2018 17:08:41 +0000 From: Shahaf Shuler To: nelio.laranjeiro@6wind.com, yskoh@mellanox.com, adrien.mazarguil@6wind.com Cc: dev@dpdk.org, stable@dpdk.org, Xueming Li Date: Tue, 23 Jan 2018 19:08:19 +0200 Message-Id: <50ad1e2a84f4b7375c005cbe117cea352829dd4e.1516727100.git.shahafs@mellanox.com> X-Mailer: git-send-email 2.12.0 In-Reply-To: References: MIME-Version: 1.0 X-Originating-IP: [141.226.120.58] X-ClientProxiedBy: DB6PR0402CA0020.eurprd04.prod.outlook.com (2603:10a6:4:91::30) To VI1PR05MB3149.eurprd05.prod.outlook.com (2603:10a6:802:1b::14) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-HT: Tenant X-MS-Office365-Filtering-Correlation-Id: 546ee3f3-0560-4d42-d783-08d56283f4a3 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(48565401081)(4534165)(4627221)(201703031133081)(201702281549075)(5600026)(4604075)(2017052603307)(7153060)(7193020); SRVR:VI1PR05MB3149; X-Microsoft-Exchange-Diagnostics: 1; VI1PR05MB3149; 3:Zj/glu41lmqayDv8I/xmRIiP2Yl9Cmnn46gHsDBqVst0eihUf8pf5r7u78DqCegKqpL1ET88hPgGwsrI7lknHcg+h58vJdsYhebN/AzNhRKJMJuEaA4GlnIH9WQuFSDOz6HOef8vmtgRtRIKCHiCdDk9GHagugfQBWkHUN0X8lmGHS9FV2mqf5/vqBI7ta9ia3JZELky/ZF8aruemJl3IxJVmFQOf6jv6eFhFRZFixs9+72cqlGAZ8BpzdSRQQTo; 25:dT08soF/DUa+IM6y+RZbRir0P6Bw+07FM9BDCTDapIMf6yG3nu8xXzmYEajRKk5kTrMqzMsYzXKGyE4UDXcuSh4LiMXdPw3+UUrOdNpflnW5fWCYYlt0M/BeZbTZ5Ilb8jgLFeUGsLH1qP4/mFQWOIhuEC1z7qz+K3XhPH0EU30LQ528OK9czB+v3ExK4v6/qAI21Mtoxk+GxuIKfFltQKa6wDY5NyCvqpNMEi8eGJASjb7Ybilqk4wvwM/BHJbDn/yAV3McmaiyTOh5c3n+8Px/SHlyBNw/45sDSlJjRbIybc8YZ3bImTv1bNt2p17/aQjocA60WrGxv+6G+8+SEA==; 31:85P4GRsfUaYYdDUNuNKArT7wE6k5N7ZC1mJ/hiGgaG6dJbVLQjztGPSJcUhPvrjF6zjL9ooJRJgMiTGTO3cHn4VSbJ/QjbD6AXP35vwai26qkHzYyqp5mBkb2ooTKhvSr5k7CuclrFILStQNjQslXgH4x0skL7HGqcor5v2KW9H0eC+bko6SLLNfSEYO3TJVAjVMyzu80z5A4qyB+DmY4ptvQaiQ4svkdljMqU5HxWY= X-MS-TrafficTypeDiagnostic: VI1PR05MB3149: X-LD-Processed: a652971c-7d2e-4d9b-a6a4-d149256f461b,ExtAddr X-Microsoft-Exchange-Diagnostics: 1; VI1PR05MB3149; 20:3Yr+8lIJn2gDQ8+vm/n6KWDcRqFUmMLOml+N3qqzc94qaMVBThTFNe1lOaFUdapMbSZA/2QbNOcs6ubkzzDvvnE6KeW5S7f+N4mrCe0wsNhMmbqB/mNu996tYLhORJtpkTlTlDBzVpKJphDY7xGPJjkXd8I4GUduv/MaZTymMP2DiotvXZ9uhjBaGCk98E5XZ0rxGCXiATrgS4wPwYxI7qa8tKejz7i+BLt5It7FX8hZh6UwyxNf/wT5F/MQtyXevphZ3a/kyvJIQiGNIwPocWmgxRnqPbn7zsyAKOky9ABOvUSZUDfaYghYhC1z0TN7DnzyNFxsL5vfu/IrOBrX2vcZaet01lBHjMdfPDZzMUHK8yST7KcEpwVjH6xIa5a02nhZckr2trqplpRILjI37zt/y/gESRPkK3OR0tZQlpnkh8hvl0qT7UzlyA+aYQ195U2VnCM0fCyRAh1ZEN4JPXVQDpWXy3TtVjPAMGImGeAclPRFGgRkNuK4cXG4D6h1; 4:WDT8gx+uwVDaoR4CxFP9Yeub1foPgeaelefQePNQKhbw8nVuqci/SwOMPIbTPt7TKvK/kM879nGMw1hMmn5QjByDfw7CW4cppcB2qX7Qfixa9K7Jv/moq1wrXp1i5LgOFOy+sfoqnBsrGA62LYk/7jj7stzI0Ldg/N1FvomQADWJEY0bY6K3ps2A5x8zzXvscBuDtdJ84DjJ0ADhTS/pdJ40eVYhRbiTr22zq/OpF0hSF3FYBZH7gyr++i72UxAv3RIdfW4tkJA5oMk1gZXv9g== X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040501)(2401047)(5005006)(8121501046)(3231023)(2400081)(944501161)(3002001)(10201501046)(93006095)(93001095)(6055026)(6041288)(20161123558120)(20161123560045)(20161123562045)(20161123564045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(6072148)(201708071742011); SRVR:VI1PR05MB3149; BCL:0; PCL:0; RULEID:(100000803101)(100110400095); SRVR:VI1PR05MB3149; X-Forefront-PRVS: 05610E64EE X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(39860400002)(396003)(376002)(366004)(39380400002)(346002)(189003)(199004)(97736004)(47776003)(5660300001)(86362001)(25786009)(55016002)(16586007)(6666003)(50226002)(53936002)(386003)(26005)(305945005)(16526018)(2906002)(8936002)(66066001)(4326008)(48376002)(7696005)(478600001)(36756003)(68736007)(52116002)(3846002)(51416003)(7736002)(81166006)(69596002)(81156014)(2950100002)(316002)(6116002)(21086003)(59450400001)(118296001)(106356001)(76176011)(8676002)(50466002)(107886003)(105586002); DIR:OUT; SFP:1101; SCL:1; SRVR:VI1PR05MB3149; H:mellanox.com; FPR:; SPF:None; PTR:InfoNoRecords; MX:1; A:1; LANG:en; Received-SPF: None (protection.outlook.com: mellanox.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; VI1PR05MB3149; 23://wVtPnRam8PaggzKUzkfM8Mte44q9kuXbC+MFH0r?= GRIYUPczwcv9gDij0KWoZb2I/IBtBwneHJ79tDHPsx0qbth0ueGHHJPNN/ATFysM+HRCnuRta+9M5bCglcdmPEA/nAch4TwiKsbA+UW9siVGfKqxOLprcD5RgK8oUXu7DCsdNkH+nl6hpaVMl9keSL3uEIMz9XKkMeyXcvcNAcPwyUWRNtC2zyStP93LZqEoJU6fl2sagmzq3AYuSKutr4w5MOHlReflr7RDEW1biB1DZ6KNNi7/Kb9050hJc5vM+k1OfedndwGIKX3EwyjI2VqnW1RprhkNhDBqbdD/6lsThJy13QHXt1sROeQfnN0Rp54nrqLFlDEgPU3KiRr4uWBTFQtGRgniyVoznPEK2u8DOg/j2zNPis/rBxIdQ6OxeEkIStPMoX7acocyrQK4jRJpvujn3hKvrLgntXFvraCctz4JxlVF+LKSeOaZCPSZyvzcS4FtnqaUuhy1Ua2LaVWfhx5GpxXNyRoQ5NaN0vakhxUorgKkfhRZmR7HzBRKquhsl0ppcV44l9Z8HPgehUwbRzSug2+7sICOWf0+QXfZmfgcWNXUTf8uEQLhuQG2vMUmB8WNAd0Lpx8uA1quoO3ymC/STq/+zzqtW7MRo2yWX8IWA9TZ7n9HOCrOrP7m2JKw6bH743b1C8tEgD7OJUkfRkyZjdpv+xJ2sS5eI8P8qXXKd0T8fIwC0647Va+ovfATwG5Bil/2e1waSe23l/195JgpFbElgQogcH378f23QgEZpV3KKsd+/mtHWnzQs8YvBcduAAzQToyAh57AuRncobIZf02dz+5dUkUs9Xo1bNYLKD0MBw4rQJljLwpmsP7WF552/T75ANW8OA3kYzDU7iittTSovDEGawuAnmcteoahzCfVRxDl5cGJi5fjlim984zAvoj1TEKmaHn1hhn3k6IZIpbxR4Yo+54BIrQT/HK38dGSBW4/eBBdZziqtF41ErzoJxM8tOqDq1yXhpZSuQ/K/owgwkpb2+Ss1mTHZtMYlmZJ7AXNog+1r2TRwNZbB5E3/SQDyLDztmHRymIhL3unAM5S+J4tBlRNLK/RPSyFqcMgwRwlYsL6KNKge4386aBI/TxJnOYg17F19Ne6HlpaSZhGX2K2IViglojKg== X-Microsoft-Exchange-Diagnostics: 1; VI1PR05MB3149; 6:5cWWxucFDP+clww93sD2ERQF0PKQX7daDEpaZ7q2UuPb7kkN3r4w4rKzz9x4BxxlGhYYUHwLPrsNcsUPLU2DhKj0ZfhIr/AAXlzTE05Ptvxq3d+CcUnrhlRIOA+EjbcAihDghFgtqqbZhItv8FRBt6EXvLA8QWFhi8savFjKG4Vym2J7DVlWvWuloQKv7MdX0fRZYM7UfYuoBMoRQzuPKzX3ta41ZNRt7rZzqj1P+YzSizwyRX2xuNWd/N6mxDVeNLYf2DsWiC7EEa4G3HKY5gXoOmIpYULsR37O8oy7ykvJO2ltZhkbpNa1jnbtD0tjQDI76DpY5aSIPNwV6bXINVu7wdpOFfB9DV6TmFaT7h8=; 5:TphRUYx7rPpHyZj/wrlBB6EUC3zVClx9A9/yErPMsrL/NczQSb3OXpFWuqj2ur8pENA6r6zcTlAW/7gZlX45fSVYtqNZMapMxqTwZCwE1vv4Z2qX3mjSjxxklrtrmh9miQBg4BI45g4U6MSiVaAzd5npa3n4MP7tMrpbbz5yZJw=; 24:1eIkjeVPiMkx+tyJ7NO0pz6YhAhN4wG4SRc1EDCh9U6qwLogHJWVktjW0cPFbOrv0Ch0j7XA0F20wpIYbz1LpsNRqeNvtuvVW4fpx3p7o6I=; 7:15vywgBwNK6B/aGg35jOopTtZFxFr3YLTrI306Z5vHVlVeFR5kteZ03ZbOsLtFD/FFfPL/3Bk1oINxxUSsnTvOZ14inhKfC0yEsZvdGHWRLg/Teoshq4eDGYbVHYc6YU+2CSR/6xz74RAlwSWsBTjKO5P+3Uua2OblFmb75lqA1lbLhAAXs8QAT7a0hLmLjL3gzOTmqryIpO6w+SCFgCI+fpw9mK609NqMlpey2COClVutifDULSWxLRINNNsY9U SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: Mellanox.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Jan 2018 17:08:41.8034 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 546ee3f3-0560-4d42-d783-08d56283f4a3 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: a652971c-7d2e-4d9b-a6a4-d149256f461b X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR05MB3149 Subject: [dpdk-dev] [PATCH 1/5] net/mlx5: fix Memory Region cache lookup 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: , Errors-To: dev-bounces@dpdk.org Sender: "dev" The memory registration (MR) cache contains pointers to mlx5_mr. The MR cache indexes are filled when a new MR is created. As it is possible for MR to be created on the flight, an extra validation must be added to avoid segmentation fault. Fixes: 6cb559d67b83 ("net/mlx5: add vectorized Rx/Tx burst for x86") Cc: stable@dpdk.org Cc: yskoh@mellanox.com Signed-off-by: Xueming Li Signed-off-by: Shahaf Shuler --- drivers/net/mlx5/mlx5_rxtx.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/net/mlx5/mlx5_rxtx.h b/drivers/net/mlx5/mlx5_rxtx.h index 2eb2f0506..a63364d79 100644 --- a/drivers/net/mlx5/mlx5_rxtx.h +++ b/drivers/net/mlx5/mlx5_rxtx.h @@ -555,7 +555,8 @@ mlx5_tx_mb2mr(struct mlx5_txq_data *txq, struct rte_mbuf *mb) if (likely(txq->mp2mr[i]->start <= addr && txq->mp2mr[i]->end >= addr)) return txq->mp2mr[i]->lkey; for (i = 0; (i != RTE_DIM(txq->mp2mr)); ++i) { - if (unlikely(txq->mp2mr[i]->mr == NULL)) { + if (unlikely(txq->mp2mr[i] == NULL || + txq->mp2mr[i]->mr == NULL)) { /* Unknown MP, add a new MR for it. */ break; }