From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-19.2 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 79BE7C48BE6 for ; Wed, 16 Jun 2021 22:40:50 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 5F033613E2 for ; Wed, 16 Jun 2021 22:40:50 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234249AbhFPWmz (ORCPT ); Wed, 16 Jun 2021 18:42:55 -0400 Received: from mail.kernel.org ([198.145.29.99]:39902 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234031AbhFPWmh (ORCPT ); Wed, 16 Jun 2021 18:42:37 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id 74021613F2; Wed, 16 Jun 2021 22:40:30 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1623883230; bh=3wJXY7PbF1Lp0INoU9jbrST9aGb9qwm7W1y7VdjaRtc=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=MBH3AxujXNlStHT8xYH2qBX1A0j214mSOuJEYBi2dMqyVh2jU1xlWxJ5gEUU7y2j4 Sq/c6XkZqL960Y5lDHSx1PT1Bw9u2yg6otqwbqmXbB96TtcOt1s09MPbQ4xXlZUR5x uMhr1/VGePhvX/uYZeVL2/t63WDFjT+vP6obbc7nYSEHJ1UWazHrWGlId8RUOowBcv ZQM1tlNXdUMZMdQw0SEe8TSKDpY3IKLgO61qD/wHdxKS0h0XNLuhtholGeULBSyKvQ 2eWTpvrEYudF+BZc6wsad+hPIFIoYoxbD6wukeNDhOiYeCo/3T93pPP62ie31gZs0T /FY2p3yHtF6Pg== From: Saeed Mahameed To: "David S. Miller" , Jakub Kicinski Cc: netdev@vger.kernel.org, Tariq Toukan , Aya Levin , Amir Tzin , Saeed Mahameed Subject: [net 8/8] net/mlx5: Reset mkey index on creation Date: Wed, 16 Jun 2021 15:40:15 -0700 Message-Id: <20210616224015.14393-9-saeed@kernel.org> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210616224015.14393-1-saeed@kernel.org> References: <20210616224015.14393-1-saeed@kernel.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org From: Aya Levin Reset only the index part of the mkey and keep the variant part. On devlink reload, driver recreates mkeys, so the mkey index may change. Trying to preserve the variant part of the mkey, driver mistakenly merged the mkey index with current value. In case of a devlink reload, current value of index part is dirty, so the index may be corrupted. Fixes: 54c62e13ad76 ("{IB,net}/mlx5: Setup mkey variant before mr create command invocation") Signed-off-by: Aya Levin Signed-off-by: Amir Tzin Reviewed-by: Tariq Toukan Signed-off-by: Saeed Mahameed --- drivers/net/ethernet/mellanox/mlx5/core/mr.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/net/ethernet/mellanox/mlx5/core/mr.c b/drivers/net/ethernet/mellanox/mlx5/core/mr.c index 50af84e76fb6..174f71ed5280 100644 --- a/drivers/net/ethernet/mellanox/mlx5/core/mr.c +++ b/drivers/net/ethernet/mellanox/mlx5/core/mr.c @@ -54,7 +54,7 @@ int mlx5_core_create_mkey(struct mlx5_core_dev *dev, mkey_index = MLX5_GET(create_mkey_out, lout, mkey_index); mkey->iova = MLX5_GET64(mkc, mkc, start_addr); mkey->size = MLX5_GET64(mkc, mkc, len); - mkey->key |= mlx5_idx_to_mkey(mkey_index); + mkey->key = (u32)mlx5_mkey_variant(mkey->key) | mlx5_idx_to_mkey(mkey_index); mkey->pd = MLX5_GET(mkc, mkc, pd); init_waitqueue_head(&mkey->wait); -- 2.31.1