Received: by 2002:a05:6a10:af89:0:0:0:0 with SMTP id iu9csp3696785pxb; Mon, 24 Jan 2022 15:38:30 -0800 (PST) X-Google-Smtp-Source: ABdhPJyjQUOfaOxRZczM0mcwOAHT3DK+YVbSCPEYWts+QoHc1jgkV2XvT07YZW7RtNTRe1mMgP5J X-Received: by 2002:a17:90b:4c42:: with SMTP id np2mr661333pjb.201.1643067510606; Mon, 24 Jan 2022 15:38:30 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1643067510; cv=none; d=google.com; s=arc-20160816; b=hYjoD0eT1sZJWeNfZ5TgREfN26CJyS2IAbP6h2sMrmTjmZiXhASn1/LlURJd5qQN8k CwXRwLewavg3fmJ2biE3t2nkT5qq5eAnnGGCHm3+IHJ0GxsSVt9uweIfuluvSzrhm3jX fVWDi8dhM6Kko81eUtSImCFPJ4QkOGvjX8/C1MrSquCkH2avejTaU9TO4aB9q6AjWQ7C 7e1t1Xv4qmAWw9Ld7JEk48e4B15SPtK/UAStvxErH9K8d7UOmBguf+oS7oUi3A94m9vu DT4qDNjMAchBdSVa4SeNF/Nhb5GvjPEKALtC+8lzzgy0Lc5Pdh3sv2x4AfSmYBWKrbik bT7A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=FKpfl+YZCTjGWfZd8rXANvpC89U2elijlTVvlKs7bHY=; b=EfTIcpObJ8P7qJvZRiCJZm+MqGemHs/MBQMw6y+xY6UhXsb8a1Y3lPaiNt82z097c4 L9riY5qwNO+FNt2pCufFiMGnJEPAegWe8qL6XEDn//mUnVkIHxC0BIOulK5geUqkBNfW 7Zre1hnBbRUT1CjES/URgNVOknctsRJccoEOeC9UQocfxjUx/bbtRkdHehwdSUf0gckM Ax1nizH3j4N3zIRnd4BJYFz2Hanz7FP4dbum43UrpHMr37+9GG+Q+iAw+criCVWXUfkr 3Jzh/J2RkXJbyPf47q7xa0LukRPzzX2s5I+Jo3uZtekO2HWskrh10jMyeEU+Ohcq15Ig 5CRA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=PhwSalTu; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id f5si6056386pgc.308.2022.01.24.15.38.19; Mon, 24 Jan 2022 15:38:30 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=PhwSalTu; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1386012AbiAXXeY (ORCPT + 99 others); Mon, 24 Jan 2022 18:34:24 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:42462 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1838147AbiAXWp5 (ORCPT ); Mon, 24 Jan 2022 17:45:57 -0500 Received: from ams.source.kernel.org (ams.source.kernel.org [IPv6:2604:1380:4601:e00::1]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 75209C058C85; Mon, 24 Jan 2022 13:06:34 -0800 (PST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ams.source.kernel.org (Postfix) with ESMTPS id 3CD03B81188; Mon, 24 Jan 2022 21:06:33 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 8F6B7C340E7; Mon, 24 Jan 2022 21:06:31 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1643058392; bh=Im0F7TeBzMVqLpyKF0wuta0Ts2zCgNoPJI3BvjCBY7M=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=PhwSalTul+K2/x85M2gQLqwQal/tWUV+NJBWjJtusaDX9dId9AY9Yw19AZFsxVPxc /8vQpRliXZiyBQPrU2YSiORsqiNS6fnduCsJ/jr3z5XxeLffCvSofobxxcNsShX969 ogO+D9ny4bvluqMZxQhZZpwjPdLymNHjqmLBx0aQ= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Nicolas Toromanoff , Herbert Xu , Sasha Levin Subject: [PATCH 5.16 0275/1039] crypto: stm32/cryp - fix lrw chaining mode Date: Mon, 24 Jan 2022 19:34:24 +0100 Message-Id: <20220124184134.532045141@linuxfoundation.org> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20220124184125.121143506@linuxfoundation.org> References: <20220124184125.121143506@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Nicolas Toromanoff [ Upstream commit fa97dc2d48b476ea98199d808d3248d285987e99 ] This fixes the lrw autotest if lrw uses the CRYP as the AES block cipher provider (as ecb(aes)). At end of request, CRYP should not update the IV in case of ECB chaining mode. Indeed the ECB chaining mode never uses the IV, but the software LRW chaining mode uses the IV field as a counter and due to the (unexpected) update done by CRYP while the AES block process, the counter get a wrong value when the IV overflow. Fixes: 5f49f18d27cd ("crypto: stm32/cryp - update to return iv_out") Signed-off-by: Nicolas Toromanoff Signed-off-by: Herbert Xu Signed-off-by: Sasha Levin --- drivers/crypto/stm32/stm32-cryp.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/crypto/stm32/stm32-cryp.c b/drivers/crypto/stm32/stm32-cryp.c index 061db567908ae..9943836a5c25c 100644 --- a/drivers/crypto/stm32/stm32-cryp.c +++ b/drivers/crypto/stm32/stm32-cryp.c @@ -644,7 +644,7 @@ static void stm32_cryp_finish_req(struct stm32_cryp *cryp, int err) /* Phase 4 : output tag */ err = stm32_cryp_read_auth_tag(cryp); - if (!err && (!(is_gcm(cryp) || is_ccm(cryp)))) + if (!err && (!(is_gcm(cryp) || is_ccm(cryp) || is_ecb(cryp)))) stm32_cryp_get_iv(cryp); if (cryp->sgs_copied) { -- 2.34.1