Received: by 2002:a05:6358:3188:b0:123:57c1:9b43 with SMTP id q8csp505157rwd; Thu, 1 Jun 2023 03:17:09 -0700 (PDT) X-Google-Smtp-Source: ACHHUZ4TPH7wGLrc0YWMrpK57NVFGHRo1lg5tyccvDPfEwrD0r6ABjfHYAkjRXYYqNd700EUT3eO X-Received: by 2002:a05:6a21:78a6:b0:111:a0e5:d29d with SMTP id bf38-20020a056a2178a600b00111a0e5d29dmr9734306pzc.4.1685614629143; Thu, 01 Jun 2023 03:17:09 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1685614629; cv=none; d=google.com; s=arc-20160816; b=NDf8T1qmu2LXhjZsGdmadtiloR2p0AuOoysBocn4IF9FtuI1oqMm2Hw59BXynrk1io zej4yTGMXwNqOQkzxGnj1eRtEm5GQ+g4UVJiOXqH0y3RNuT6B6X2ZIAMiIHtm/X7SBpY E6D/28U9CJwMwn9kQLpyZ3NVCGSY1XR2w3XizZg7cXS1fd3mxkflXx0XnkiprEncA+HZ +hF0fzwMrTUg+HO0RxbvjYaTi9TTchMoHtpOHZDDZpHFzICMaLwej+ig/kAdlHwb6KqA ePNepUg7evFVD9YXtcfYaoIKvrw5os4AysMPMPvpgJd0M8rRf6oi+KEfNMep7zOQrV2c yklw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:organization :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=vvziVjTWvI12g5aG/eK6qOwZmuDug2G5/g6fxU7+hIs=; b=s80rGP/k64aFOQdLTkyNN07UtfNUsNWHLxQzP4MPqulWNJFwRPOLvDoafuJgu+5dYB lojVWiGpzk60Nee/kLKskWU4s6+kWAxqLdmLBga+zg3z2w1zDOYGnT7xdUEVJjd8lDCO C9Ty7GR5Y4kW2TRB0uSJO3obNykION/91WV+GXFEvrzVl2AavH3oBylMHFD6ykOGuJ8d QEP4flybxupge4Dt7RsNpOcYi7rxXHJk5ma41DkI++l9mfQx3/GlDlPpQzdDowwuiOHc BWn+ClITBGsoNkBrC0Zc4ElYiTbc4xNu52KvYfMsc6SvYHA3uTFdK8sfnC5e+LdVzbkT nG/g== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=m91iqh6F; spf=pass (google.com: domain of linux-crypto-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-crypto-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id q13-20020a63750d000000b00534780446d9si2506099pgc.640.2023.06.01.03.16.53; Thu, 01 Jun 2023 03:17:09 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-crypto-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=m91iqh6F; spf=pass (google.com: domain of linux-crypto-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-crypto-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232542AbjFAKLn (ORCPT + 99 others); Thu, 1 Jun 2023 06:11:43 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:46586 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233179AbjFAKK7 (ORCPT ); Thu, 1 Jun 2023 06:10:59 -0400 Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 845E510F4 for ; Thu, 1 Jun 2023 03:10:08 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1685614208; x=1717150208; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=7FIHFgZKhj1IkE7mppc5mZj6JFQvCI6imZ5p/+6FriI=; b=m91iqh6FJq5hnRs7BOyTX9w5OuBObj9Q8r0WfpUxYPYYIwuepSd+WhMO oWsfH1L7+QS0sCqwzoAW781QcQIfyrvqWdTyUi+SKEVlovZS3LUu10LeI ZE+G0Audf5ymeX5wWFmT+8eNrxEuJOxgpYRcBDeoZitqnS7kMkQpxPROZ dgbm0NA6QDL7J5yFcynjXhmQEjO0qG/7WoehHkk9mFvyXj9ggeNlvVYrm abe5+jpQudHvT8kSGNtFqJouFrLjzxaBuf5/+IPZrtFmQxiO8fpzl+EPD /9SXLQ/6SfmmXR5pdpkNJmnCtCal9BPJUlJy9Jsf925Jg5h4WhkNPi3nc A==; X-IronPort-AV: E=McAfee;i="6600,9927,10727"; a="358791277" X-IronPort-AV: E=Sophos;i="6.00,209,1681196400"; d="scan'208";a="358791277" Received: from fmsmga005.fm.intel.com ([10.253.24.32]) by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 01 Jun 2023 03:10:08 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10727"; a="1037435177" X-IronPort-AV: E=Sophos;i="6.00,209,1681196400"; d="scan'208";a="1037435177" Received: from silpixa00400314.ir.intel.com (HELO silpixa00400314.ger.corp.intel.com) ([10.237.222.175]) by fmsmga005.fm.intel.com with ESMTP; 01 Jun 2023 03:10:06 -0700 From: Giovanni Cabiddu To: herbert@gondor.apana.org.au Cc: linux-crypto@vger.kernel.org, qat-linux@intel.com, Hareshx Sankar Raj , Bolemx Sivanagaleela , Giovanni Cabiddu Subject: [PATCH 1/2] crypto: qat - unmap buffer before free for DH Date: Thu, 1 Jun 2023 11:09:59 +0100 Message-Id: <20230601101000.18293-2-giovanni.cabiddu@intel.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230601101000.18293-1-giovanni.cabiddu@intel.com> References: <20230601101000.18293-1-giovanni.cabiddu@intel.com> MIME-Version: 1.0 Organization: Intel Research and Development Ireland Ltd - Co. Reg. #308263 - Collinstown Industrial Park, Leixlip, County Kildare - Ireland Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-4.6 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_MED, SPF_HELO_NONE,SPF_NONE,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-crypto@vger.kernel.org From: Hareshx Sankar Raj The callback function for DH frees the memory allocated for the destination buffer before unmapping it. This sequence is wrong. Change the cleanup sequence to unmap the buffer before freeing it. Fixes: 029aa4624a7f ("crypto: qat - remove dma_free_coherent() for DH") Signed-off-by: Hareshx Sankar Raj Co-developed-by: Bolemx Sivanagaleela Signed-off-by: Bolemx Sivanagaleela Reviewed-by: Giovanni Cabiddu Signed-off-by: Giovanni Cabiddu --- drivers/crypto/intel/qat/qat_common/qat_asym_algs.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/drivers/crypto/intel/qat/qat_common/qat_asym_algs.c b/drivers/crypto/intel/qat/qat_common/qat_asym_algs.c index 935a7e012946..8806242469a0 100644 --- a/drivers/crypto/intel/qat/qat_common/qat_asym_algs.c +++ b/drivers/crypto/intel/qat/qat_common/qat_asym_algs.c @@ -170,15 +170,14 @@ static void qat_dh_cb(struct icp_qat_fw_pke_resp *resp) } areq->dst_len = req->ctx.dh->p_size; + dma_unmap_single(dev, req->out.dh.r, req->ctx.dh->p_size, + DMA_FROM_DEVICE); if (req->dst_align) { scatterwalk_map_and_copy(req->dst_align, areq->dst, 0, areq->dst_len, 1); kfree_sensitive(req->dst_align); } - dma_unmap_single(dev, req->out.dh.r, req->ctx.dh->p_size, - DMA_FROM_DEVICE); - dma_unmap_single(dev, req->phy_in, sizeof(struct qat_dh_input_params), DMA_TO_DEVICE); dma_unmap_single(dev, req->phy_out, -- 2.40.1