Received: by 2002:ad5:474a:0:0:0:0:0 with SMTP id i10csp31571imu; Wed, 21 Nov 2018 14:51:06 -0800 (PST) X-Google-Smtp-Source: AFSGD/WP56F1cunDaeb5yEJEIzDLN7uZTNTxt49K0y7mbfWD28dVu3+Vj45UaXgaJdJ9ILSaAIBR X-Received: by 2002:a62:931a:: with SMTP id b26mr2311727pfe.65.1542840666622; Wed, 21 Nov 2018 14:51:06 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1542840666; cv=none; d=google.com; s=arc-20160816; b=s79DyqwLN6dIb7waLwbefkceuZqBzoPL+38bPzrtuN8vbkty1YJTxdc5eVgPH8WgWf AYCDGfsH0rHb/mQ/CnFTfoUP0sFgVN2BkiyimBCKPHQXl15gMcIkVfxfFlqWPyb3oHbP uuEQ0kHo57vJELkgIeeODmV+fQSPPW4emOUzYMNp/bqdwX2DWyBt1QQrXzTVpefa9tpv 3rdBrmO4QF57eubavkhCY7lYoIC8z+3F9VVEzVemo+1vapqUSnSy4skDfN/4ED4Xju9I UgS/AtT8o/mEItfQVdYxKWD1H2NU+iIKe/26uDnPZEmAE62N0a6kGb7DH3HIy17Io47J HACQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=bc4X4FEjiYB/EOpgA0ra4kwTawo+hbx8RTVk5RRJg4k=; b=W4dbZgi0C40PwEcpvwt0sDNkUn++DPJNXuGorIBDKda0qApKobbAUdMdQsfxmjtjdY 0SWkh9W3n3ql7Bl7rAbkL18/0EZA7oTV7eWgKKvs/lCS9QZU70D15wIcEgUEXld0ayGo be5B1TNp2XdxK5J4e4aseFoe5khTA8KcJ8xFsaw9YejOCOQwRDnSNmpOd5Vkb+Os9Xiq Gn+qs0Kq1Kr5Q21gMietsvRYWthsTkPmc25rdoKkNZ+RPN2A6P1hqBBw1fEbgRHnizzq nIOsShDpUMfajwtJg302N9PUUKUHngv8rBfa5u8IklGp2K/XXW5gZNmK937Tn2EFjP+Y lTlg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=fG14Nv9T; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id d37-v6si48776981plb.167.2018.11.21.14.50.51; Wed, 21 Nov 2018 14:51:06 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=fG14Nv9T; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2387844AbeKVFm6 (ORCPT + 99 others); Thu, 22 Nov 2018 00:42:58 -0500 Received: from mail.kernel.org ([198.145.29.99]:37590 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2387767AbeKVFm4 (ORCPT ); Thu, 22 Nov 2018 00:42:56 -0500 Received: from localhost (5356596B.cm-6-7b.dynamic.ziggo.nl [83.86.89.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 037D1206BB; Wed, 21 Nov 2018 19:07:23 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1542827244; bh=/FFOWekMoLDeKmsTMc7lCJeAzVOfDlNUcyn6pOQM/XM=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=fG14Nv9TI947PzlTtU6yEoVyMgqRAlKayNuIMZCz8713MNCp01E53/wz0KPchi3PP tG4nL9eRxsTpiyOAoqGiG1s5zDQ7KOeHfuDMZCPAO7X+dej1Cnpc9hNEbts7obzb26 P+AQu1WAv5msSBp6irGbXe46aO946aKA349BMJig= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Raed Salem , Aviad Yehezkel , Saeed Mahameed Subject: [PATCH 4.19 28/42] net/mlx5: IPSec, Fix the SA context hash key Date: Wed, 21 Nov 2018 20:06:04 +0100 Message-Id: <20181121183149.202805283@linuxfoundation.org> X-Mailer: git-send-email 2.19.1 In-Reply-To: <20181121183147.869199006@linuxfoundation.org> References: <20181121183147.869199006@linuxfoundation.org> User-Agent: quilt/0.65 X-stable: review MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 4.19-stable review patch. If anyone has any objections, please let me know. ------------------ From: Raed Salem [ Upstream commit f2b18732ee9863ac036759baf616ffa03c252ed5 ] The commit "net/mlx5: Refactor accel IPSec code" introduced a bug where asynchronous short time change in hash key value by create/release SA context might happen during an asynchronous hash resize operation this could cause a subsequent remove SA context operation to fail as the key value used during resize is not the same key value used when remove SA context operation is invoked. This commit fixes the bug by defining the SA context hash key such that it includes only fields that never change during the lifetime of the SA context object. Fixes: d6c4f0298cec ("net/mlx5: Refactor accel IPSec code") Signed-off-by: Raed Salem Reviewed-by: Aviad Yehezkel Signed-off-by: Saeed Mahameed Signed-off-by: Greg Kroah-Hartman --- drivers/net/ethernet/mellanox/mlx5/core/fpga/ipsec.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) --- a/drivers/net/ethernet/mellanox/mlx5/core/fpga/ipsec.c +++ b/drivers/net/ethernet/mellanox/mlx5/core/fpga/ipsec.c @@ -83,8 +83,14 @@ struct mlx5_fpga_ipsec_rule { }; static const struct rhashtable_params rhash_sa = { - .key_len = FIELD_SIZEOF(struct mlx5_fpga_ipsec_sa_ctx, hw_sa), - .key_offset = offsetof(struct mlx5_fpga_ipsec_sa_ctx, hw_sa), + /* Keep out "cmd" field from the key as it's + * value is not constant during the lifetime + * of the key object. + */ + .key_len = FIELD_SIZEOF(struct mlx5_fpga_ipsec_sa_ctx, hw_sa) - + FIELD_SIZEOF(struct mlx5_ifc_fpga_ipsec_sa_v1, cmd), + .key_offset = offsetof(struct mlx5_fpga_ipsec_sa_ctx, hw_sa) + + FIELD_SIZEOF(struct mlx5_ifc_fpga_ipsec_sa_v1, cmd), .head_offset = offsetof(struct mlx5_fpga_ipsec_sa_ctx, hash), .automatic_shrinking = true, .min_size = 1,