Received: by 2002:a25:868d:0:0:0:0:0 with SMTP id z13csp800733ybk; Wed, 13 May 2020 13:30:11 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyRc/7nSWDSV7N66xsYAhVftzuUNF8KYKa/IDLzPKjQfasfHas3UX10Tz4N90eyGH23xie0 X-Received: by 2002:a05:6402:30b2:: with SMTP id df18mr1236877edb.323.1589401811635; Wed, 13 May 2020 13:30:11 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1589401811; cv=none; d=google.com; s=arc-20160816; b=kbOUjp8t04+J0sTuPn+ACRBzPyjVd8Qvs+Q3qg9841bFG92Z68KnM6NNjgyNC/eI3U pdI8xDmZsw4RBe1qc1LGmGZBS8IVhtsN+uu38YTwiWbIiPT6uGY6Mm7IFgSbuVBvRKqv 1PoopVGNVDnKReJNlzv8PLKQF1OhBTJFykgHJARiPUPKvuucmN1fmTavkfQCF158J8JZ llu54/q5mS81pKZCEnhvkDLkndjCbOPHMqFKKo7h1D2OER8ODc1gWwhvhZRtwEqLaAUZ mrKqGK/Efwv0VdSLIvXrx6hGc3qDo6rUYrIMNuk3pwS4mRtaE4qzlv0yEK/7xnq39P8c lpYg== 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=en6Ymwx6VatC9YLucTDSyaUT57QiEwS/sMnY4809f1A=; b=Rp0A773EaY/tezhnb0sytDMzegAjpUKiKN+UkQTPTR8B4MXRGWIEDEqHOkOgIX1lCf dRhLKKiBbp74xckmk2729xB+C/+WicC1GI/2Hu7KJhzBUxGcMU8tjnC7dAex/DgFgVay x1wYK254qYNtG49R5okkv2BQj7cs+DwAhd9BBybSm6C12z/9n7ThVytYu49yr0o+Vvab jaMgsgFvSa93TVIY6SJWh2vXr7j1lxdRzz8kBm+aBzGFpxv8I1Ag7BZ9orb2FlGotlaO jZ2mmZ8IN2gb8mF+7OCDycPvSmI7QkqGquSjMzh0LX0CpFubt2bMzdoJtlEgsr6PMdKF ro0g== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=hmJJEcov; 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 Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id m7si531283ejc.470.2020.05.13.13.29.48; Wed, 13 May 2020 13:30:11 -0700 (PDT) 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=@kernel.org header.s=default header.b=hmJJEcov; 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 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1733280AbgEMJtl (ORCPT + 99 others); Wed, 13 May 2020 05:49:41 -0400 Received: from mail.kernel.org ([198.145.29.99]:48822 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1733271AbgEMJti (ORCPT ); Wed, 13 May 2020 05:49:38 -0400 Received: from localhost (83-86-89-107.cable.dynamic.v4.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 626F3206D6; Wed, 13 May 2020 09:49:37 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1589363377; bh=jBWitMYFdNu0214x8a7VCY4Sq+QrJC98y5VwtH5igU4=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=hmJJEcovxd6JROAOE24GfjX+hLbSUvAcyfmPFlH6JVblgibsE5ec5KRXOejRmBPtD Lb6+rUxeqpJb0U0883XsVOsLLFIIjc44v3RHenwaX6nuzAcNeyeLmpFofA+csRehaY vwRkFFq8AmeFGZwoFXkPGpjXjHu+MaktaqxF3kH4= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, "Jason A. Donenfeld" , Eric Biggers , Herbert Xu Subject: [PATCH 5.4 50/90] crypto: arch/nhpoly1305 - process in explicit 4k chunks Date: Wed, 13 May 2020 11:44:46 +0200 Message-Id: <20200513094414.105993904@linuxfoundation.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20200513094408.810028856@linuxfoundation.org> References: <20200513094408.810028856@linuxfoundation.org> User-Agent: quilt/0.66 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 From: Jason A. Donenfeld commit a9a8ba90fa5857c2c8a0e32eef2159cec717da11 upstream. Rather than chunking via PAGE_SIZE, this commit changes the arch implementations to chunk in explicit 4k parts, so that calculations on maximum acceptable latency don't suddenly become invalid on platforms where PAGE_SIZE isn't 4k, such as arm64. Fixes: 0f961f9f670e ("crypto: x86/nhpoly1305 - add AVX2 accelerated NHPoly1305") Fixes: 012c82388c03 ("crypto: x86/nhpoly1305 - add SSE2 accelerated NHPoly1305") Fixes: a00fa0c88774 ("crypto: arm64/nhpoly1305 - add NEON-accelerated NHPoly1305") Fixes: 16aae3595a9d ("crypto: arm/nhpoly1305 - add NEON-accelerated NHPoly1305") Cc: stable@vger.kernel.org Signed-off-by: Jason A. Donenfeld Reviewed-by: Eric Biggers Signed-off-by: Herbert Xu Signed-off-by: Greg Kroah-Hartman --- arch/arm/crypto/nhpoly1305-neon-glue.c | 2 +- arch/arm64/crypto/nhpoly1305-neon-glue.c | 2 +- arch/x86/crypto/nhpoly1305-avx2-glue.c | 2 +- arch/x86/crypto/nhpoly1305-sse2-glue.c | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) --- a/arch/arm/crypto/nhpoly1305-neon-glue.c +++ b/arch/arm/crypto/nhpoly1305-neon-glue.c @@ -30,7 +30,7 @@ static int nhpoly1305_neon_update(struct return crypto_nhpoly1305_update(desc, src, srclen); do { - unsigned int n = min_t(unsigned int, srclen, PAGE_SIZE); + unsigned int n = min_t(unsigned int, srclen, SZ_4K); kernel_neon_begin(); crypto_nhpoly1305_update_helper(desc, src, n, _nh_neon); --- a/arch/arm64/crypto/nhpoly1305-neon-glue.c +++ b/arch/arm64/crypto/nhpoly1305-neon-glue.c @@ -30,7 +30,7 @@ static int nhpoly1305_neon_update(struct return crypto_nhpoly1305_update(desc, src, srclen); do { - unsigned int n = min_t(unsigned int, srclen, PAGE_SIZE); + unsigned int n = min_t(unsigned int, srclen, SZ_4K); kernel_neon_begin(); crypto_nhpoly1305_update_helper(desc, src, n, _nh_neon); --- a/arch/x86/crypto/nhpoly1305-avx2-glue.c +++ b/arch/x86/crypto/nhpoly1305-avx2-glue.c @@ -29,7 +29,7 @@ static int nhpoly1305_avx2_update(struct return crypto_nhpoly1305_update(desc, src, srclen); do { - unsigned int n = min_t(unsigned int, srclen, PAGE_SIZE); + unsigned int n = min_t(unsigned int, srclen, SZ_4K); kernel_fpu_begin(); crypto_nhpoly1305_update_helper(desc, src, n, _nh_avx2); --- a/arch/x86/crypto/nhpoly1305-sse2-glue.c +++ b/arch/x86/crypto/nhpoly1305-sse2-glue.c @@ -29,7 +29,7 @@ static int nhpoly1305_sse2_update(struct return crypto_nhpoly1305_update(desc, src, srclen); do { - unsigned int n = min_t(unsigned int, srclen, PAGE_SIZE); + unsigned int n = min_t(unsigned int, srclen, SZ_4K); kernel_fpu_begin(); crypto_nhpoly1305_update_helper(desc, src, n, _nh_sse2);