From patchwork Fri Jan 25 08:49:12 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ard Biesheuvel X-Patchwork-Id: 156564 Delivered-To: patch@linaro.org Received: by 2002:a02:48:0:0:0:0:0 with SMTP id 69csp100456jaa; Fri, 25 Jan 2019 00:49:24 -0800 (PST) X-Google-Smtp-Source: ALg8bN5VmlVA5KSLTWKM6N24x5YlU8FVDOh8rflVFgn1jXyrsoT2Ane+xp5tZIK3ACqzTh+YiUmu X-Received: by 2002:a62:870e:: with SMTP id i14mr10277634pfe.41.1548406164345; Fri, 25 Jan 2019 00:49:24 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1548406164; cv=none; d=google.com; s=arc-20160816; b=t7tNBTIDHUrkgfoqd1q+bdLzFFUEe0HYKx4byst2giolExrQCOTOdEshExjeA8en1U SK3z+gFcUHasIm6dNIU+xrUNfbDpPcibbZC5wQtrYt6i6gPXrzM/OhctoKTI4Z0GNCJg fiexrCGRYcWy9mLNdlsfzzK3SR3bnqXe5YMK7MRMaQr0w8cR6bqE+tT8riMA/3AJAlXi rUfKPIWFDa/37AAsMv4DWjWX6tuONsf2E/arrVos53ecNaP27KygclA0k4YPlrMaRGmM kjrS9v/2LiGGU7eTlHJ/lxZOQ+CsT+tuBfRj9M+k3Mhzv2J2se1CGZaRl8lyMPRDyjdk CtaQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:references:in-reply-to:message-id:date :subject:cc:to:from:dkim-signature; bh=/v31AH8ksTfHDYNKI/9rR22EhE+xJdER9lUWsya6zvU=; b=ZR9y1dZy0vGmRQCOh7W6FAPT0SJVqOzXIvuhwiLlggRMxQ9gLiqP0yIbl/z7CjS/H+ GjwTZORX4eDViVq9vqFur/C85c7R693SRtloG64GVAHkJEgxnRAfSIZOTBq2CreHK78Y zCx9TU/1UvXJGBDIfAaUJ0dut0SeosCd/XEj/NShJa1md+ltViXu+W8NEgc3/4weUNO7 QIB/KN4WNOBqnRrLoMG7/kWilaLdAePKdqMY43akeYomsPQICA1fv2d2Bef1QUkrG4Iq X/nFm3uapJOSlRrHrSYhE2r6+HRtEFKX8zBHHuGhFgyjzjwT90GXGbmniobESOQuWQDl UGwA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=JsBZ6fDn; spf=pass (google.com: best guess record for domain of linux-crypto-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-crypto-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id e13si25448166pgh.251.2019.01.25.00.49.24; Fri, 25 Jan 2019 00:49:24 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-crypto-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=@linaro.org header.s=google header.b=JsBZ6fDn; spf=pass (google.com: best guess record for domain of linux-crypto-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-crypto-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728505AbfAYItX (ORCPT + 3 others); Fri, 25 Jan 2019 03:49:23 -0500 Received: from mail-wr1-f65.google.com ([209.85.221.65]:37449 "EHLO mail-wr1-f65.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726669AbfAYItX (ORCPT ); Fri, 25 Jan 2019 03:49:23 -0500 Received: by mail-wr1-f65.google.com with SMTP id s12so9372622wrt.4 for ; Fri, 25 Jan 2019 00:49:22 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=/v31AH8ksTfHDYNKI/9rR22EhE+xJdER9lUWsya6zvU=; b=JsBZ6fDndDz/OC6Hiu3/H1urS8F+4YM7fZuaOoWb5W8qSbC+9/0IHs0JGry4dVCHjJ V5WyYVyKb3KJD2GHq/RZNKKUc/hc0W+Z83bUPaJ5GpSIu2XdiYuwPlrzlBQWjT4z0s7m iTeGXWPCrlTMKBO5TdcGZkV9bEkCloY5HGhok= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=/v31AH8ksTfHDYNKI/9rR22EhE+xJdER9lUWsya6zvU=; b=Q29DOEzlKMHLV08RBGbNQXpsWXoS4rqVudr1o6WhNUXcbXF/798ZSsiUutwi6UUo5/ xfVH86TlndktwnDS+Zl1Xo+O5Ru03tYoD6YYVw9z6OaVdWiMJgHPL32SHdUCr00FHAUO hj/SNMrj+XG+sjhjcZudFSbnoIG4b4wcmwhQLYz89OQJAtpiQ0fnKJPD0ylLZnwY4VNQ rTPm31iz4KWRzTCC1MijQpx787pSY5WYE0pSU26zIPTsh6iYvTh9lnJ5eXr6oo/r9t+i kKVNC2pHXif9ZX/FkdMLp60JoN08EQC3ce3v/CQpe+bT56Mi40Py4mNUyOAQm0vEkXVr cB7g== X-Gm-Message-State: AHQUAuZvXdwVShGSRjwOlQoKqOvNab18cjtHIWdqfjbTC9pskAtswA0u /n9lfW7PIZS13FTg35jhBxQ8vQ1XtKCk8A== X-Received: by 2002:adf:ef88:: with SMTP id d8mr1476396wro.163.1548406161156; Fri, 25 Jan 2019 00:49:21 -0800 (PST) Received: from dogfood.home ([2a01:cb1d:112:6f00:bcd4:806e:230a:673e]) by smtp.gmail.com with ESMTPSA id 125sm112594574wmm.26.2019.01.25.00.49.20 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Fri, 25 Jan 2019 00:49:20 -0800 (PST) From: Ard Biesheuvel To: linux-crypto@vger.kernel.org Cc: linux-arm-kernel@lists.infradead.org, herbert@gondor.apana.org.au, ebiggers@kernel.org, Ard Biesheuvel , stable@vger.kernel.org Subject: [PATCH v2 1/4] crypto: arm/crct10dif - revert to C code for short inputs Date: Fri, 25 Jan 2019 09:49:12 +0100 Message-Id: <20190125084915.25411-2-ard.biesheuvel@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20190125084915.25411-1-ard.biesheuvel@linaro.org> References: <20190125084915.25411-1-ard.biesheuvel@linaro.org> Sender: linux-crypto-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-crypto@vger.kernel.org The SIMD routine ported from x86 used to have a special code path for inputs < 16 bytes, which got lost somewhere along the way. Instead, the current glue code aligns the input pointer to permit the NEON routine to use special versions of the vld1 instructions that assume 16 byte alignment, but this could result in inputs of less than 16 bytes to be passed in. This not only fails the new extended tests that Eric has implemented, it also results in the code reading past the end of the input, which could potentially result in crashes when dealing with less than 16 bytes of input at the end of a page which is followed by an unmapped page. So update the glue code to only invoke the NEON routine if the input is more than 16 bytes. Reported-by: Eric Biggers Fixes: 1d481f1cd892 ("crypto: arm/crct10dif - port x86 SSE implementation to ARM") Cc: # v4.10+ Signed-off-by: Ard Biesheuvel --- arch/arm/crypto/crct10dif-ce-core.S | 14 ++++++------ arch/arm/crypto/crct10dif-ce-glue.c | 23 +++++--------------- 2 files changed, 13 insertions(+), 24 deletions(-) -- 2.17.1 diff --git a/arch/arm/crypto/crct10dif-ce-core.S b/arch/arm/crypto/crct10dif-ce-core.S index ce45ba0c0687..16019b5961e7 100644 --- a/arch/arm/crypto/crct10dif-ce-core.S +++ b/arch/arm/crypto/crct10dif-ce-core.S @@ -124,10 +124,10 @@ ENTRY(crc_t10dif_pmull) vext.8 q10, qzr, q0, #4 // receive the initial 64B data, xor the initial crc value - vld1.64 {q0-q1}, [arg2, :128]! - vld1.64 {q2-q3}, [arg2, :128]! - vld1.64 {q4-q5}, [arg2, :128]! - vld1.64 {q6-q7}, [arg2, :128]! + vld1.64 {q0-q1}, [arg2]! + vld1.64 {q2-q3}, [arg2]! + vld1.64 {q4-q5}, [arg2]! + vld1.64 {q6-q7}, [arg2]! CPU_LE( vrev64.8 q0, q0 ) CPU_LE( vrev64.8 q1, q1 ) CPU_LE( vrev64.8 q2, q2 ) @@ -167,7 +167,7 @@ CPU_LE( vrev64.8 q7, q7 ) _fold_64_B_loop: .macro fold64, reg1, reg2 - vld1.64 {q11-q12}, [arg2, :128]! + vld1.64 {q11-q12}, [arg2]! vmull.p64 q8, \reg1\()h, d21 vmull.p64 \reg1, \reg1\()l, d20 @@ -238,7 +238,7 @@ _16B_reduction_loop: vmull.p64 q7, d15, d21 veor.8 q7, q7, q8 - vld1.64 {q0}, [arg2, :128]! + vld1.64 {q0}, [arg2]! CPU_LE( vrev64.8 q0, q0 ) vswp d0, d1 veor.8 q7, q7, q0 @@ -335,7 +335,7 @@ _less_than_128: vmov.i8 q0, #0 vmov s3, arg1_low32 // get the initial crc value - vld1.64 {q7}, [arg2, :128]! + vld1.64 {q7}, [arg2]! CPU_LE( vrev64.8 q7, q7 ) vswp d14, d15 veor.8 q7, q7, q0 diff --git a/arch/arm/crypto/crct10dif-ce-glue.c b/arch/arm/crypto/crct10dif-ce-glue.c index d428355cf38d..14c19c70a841 100644 --- a/arch/arm/crypto/crct10dif-ce-glue.c +++ b/arch/arm/crypto/crct10dif-ce-glue.c @@ -35,26 +35,15 @@ static int crct10dif_update(struct shash_desc *desc, const u8 *data, unsigned int length) { u16 *crc = shash_desc_ctx(desc); - unsigned int l; - if (!may_use_simd()) { - *crc = crc_t10dif_generic(*crc, data, length); + if (length >= CRC_T10DIF_PMULL_CHUNK_SIZE && may_use_simd()) { + kernel_neon_begin(); + *crc = crc_t10dif_pmull(*crc, data, length); + kernel_neon_end(); } else { - if (unlikely((u32)data % CRC_T10DIF_PMULL_CHUNK_SIZE)) { - l = min_t(u32, length, CRC_T10DIF_PMULL_CHUNK_SIZE - - ((u32)data % CRC_T10DIF_PMULL_CHUNK_SIZE)); - - *crc = crc_t10dif_generic(*crc, data, l); - - length -= l; - data += l; - } - if (length > 0) { - kernel_neon_begin(); - *crc = crc_t10dif_pmull(*crc, data, length); - kernel_neon_end(); - } + *crc = crc_t10dif_generic(*crc, data, length); } + return 0; } From patchwork Fri Jan 25 08:49:14 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ard Biesheuvel X-Patchwork-Id: 156566 Delivered-To: patch@linaro.org Received: by 2002:a02:48:0:0:0:0:0 with SMTP id 69csp100506jaa; Fri, 25 Jan 2019 00:49:27 -0800 (PST) X-Google-Smtp-Source: ALg8bN7t4BNCdQVfweV51XtjkAx0MR0vL7Fq3PeQwkuExd26vDSWMjjDeqJn6daj7UhSAzkA7x8f X-Received: by 2002:a62:670f:: with SMTP id b15mr9990041pfc.212.1548406166972; Fri, 25 Jan 2019 00:49:26 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1548406166; cv=none; d=google.com; s=arc-20160816; b=fnUu8HOvX1ie8mMUs5BvcVdktnBCvS3FKIfgSOoTyaX19elJN35fDLGeGmwL/UjMNt frNL+GXmRchFWKf/l8avxb3YrZd0bsq4kVV6ek3vIKJG3FmAFLLl+1LJAjR3KJawkNhN OjDlZEPePSJlbRXj2gG0wMw2qBlBPNTMehIyuNXr9uUtdjbkzpSmgoza65Utna4fK4Wx AjdHGGQfu7hrkE5cfucX/NuGUsYqZ52ksC55vZYMHrzl66xjJxTLOTCsJCkhoXyzMO5t BFlTD3nLTA/kRTy+BwUwvLX0CAfcs9vSQlH3hypFySXlbMB2wHQv54ZRwGdiZLJUfvmc EAwQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:references:in-reply-to:message-id:date :subject:cc:to:from:dkim-signature; bh=3i4VSVBNJKNuInAMRTH6x98wcOlfnlNxdkcXRyELG3M=; b=vcz2GwsJ1oZ1SrzrNHy8jSlsoDP3AI9fHuh3oym9eYZNKjMUrZfrXhHcoerKId9btp 0mFfsbLwj5bU9os2XBg+nTcJ86BFxHT4dI4i4m+lcGe+/gFtYO3A3sBKKdNfGRB9dJJY TJGyT2fEBESVW0O8IinNV9J7GaGznzCHhNU1tRKhKb1I+pkuPQElssPk/ze3omPz0oDu +d5QmrLNu07ToPl0vgYk/QAbTuS3ipkxlFz5S4bx+ItvHqj7LB50iZPY1JFp4gVd5Y5M VwI8wYTj+eFq3P47nE2nDD2+nnQ5lYwK6uk5za5QgfzSn4HAFui6QdT91IKbc3UK5+UD dMmg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=WOkV3jNP; spf=pass (google.com: best guess record for domain of linux-crypto-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-crypto-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id e13si25448166pgh.251.2019.01.25.00.49.26; Fri, 25 Jan 2019 00:49:26 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-crypto-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=@linaro.org header.s=google header.b=WOkV3jNP; spf=pass (google.com: best guess record for domain of linux-crypto-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-crypto-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726802AbfAYIt0 (ORCPT + 3 others); Fri, 25 Jan 2019 03:49:26 -0500 Received: from mail-wm1-f68.google.com ([209.85.128.68]:52257 "EHLO mail-wm1-f68.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726669AbfAYIt0 (ORCPT ); Fri, 25 Jan 2019 03:49:26 -0500 Received: by mail-wm1-f68.google.com with SMTP id m1so5926616wml.2 for ; Fri, 25 Jan 2019 00:49:24 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=3i4VSVBNJKNuInAMRTH6x98wcOlfnlNxdkcXRyELG3M=; b=WOkV3jNPR1KFdSATKSBt83Av+J5wm3/Fl7piyMS0+79fo+majgdNlXYpBLPEBOjs3f vJm6vW4JmUFftUoNnMGe5FbZym5jkf2NiN6H/butQcBl/U7UElpctMFACibJpfmBJn7L uMMRpCu3uvFsNAr/os/SvoX0EGx/RFxdyDrjc= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=3i4VSVBNJKNuInAMRTH6x98wcOlfnlNxdkcXRyELG3M=; b=OhdolyTZDvhTiL7zB3Oa95rMJ6ASmTbH96MZsZPVpUf314vexMWghIkUxyz8VeWWPt 3y5LtShc8SkDaFMiXyNCylsvLEFQhzJjtuszK8JsuS9jOigR9t0S3XFlW2dU+DSnWfzZ KZvKMC8qhgRUWP+j0DBDMlOcOvDPRCG/BNNcTcmiOEW/DfCJvSf/loeRQpSvd/KiKJ+m LwwPszYxRIb2WLoeKcGdXhVh38Z+i838vzxdUjxHmpIXJHUPVFECfVFJ3I3PufzR8Ql0 +S3TNOJoTy+YJO25qm8N+bOPBi9an4ookbAWvJr9Ps6YAvpnE2gSM9eIy/9EB1YBWfL2 iSwA== X-Gm-Message-State: AJcUukdm9d60RU6TcJGXo9K7CMWDzo8qnU2jjgBvO3PXU3KuCryZIKzZ BxL2RHd6ekfXW8hOn5+fPCoINef3pdCP6g== X-Received: by 2002:a1c:570d:: with SMTP id l13mr6050823wmb.139.1548406164011; Fri, 25 Jan 2019 00:49:24 -0800 (PST) Received: from dogfood.home ([2a01:cb1d:112:6f00:bcd4:806e:230a:673e]) by smtp.gmail.com with ESMTPSA id 125sm112594574wmm.26.2019.01.25.00.49.22 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Fri, 25 Jan 2019 00:49:23 -0800 (PST) From: Ard Biesheuvel To: linux-crypto@vger.kernel.org Cc: linux-arm-kernel@lists.infradead.org, herbert@gondor.apana.org.au, ebiggers@kernel.org, Ard Biesheuvel Subject: [PATCH v2 3/4] crypto: arm/crct10dif - remove dead code Date: Fri, 25 Jan 2019 09:49:14 +0100 Message-Id: <20190125084915.25411-4-ard.biesheuvel@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20190125084915.25411-1-ard.biesheuvel@linaro.org> References: <20190125084915.25411-1-ard.biesheuvel@linaro.org> Sender: linux-crypto-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-crypto@vger.kernel.org Remove some code that is no longer called now that we make sure never to invoke the SIMD routine with less that 16 bytes of input. Signed-off-by: Ard Biesheuvel --- arch/arm/crypto/crct10dif-ce-core.S | 13 ------------- 1 file changed, 13 deletions(-) -- 2.17.1 diff --git a/arch/arm/crypto/crct10dif-ce-core.S b/arch/arm/crypto/crct10dif-ce-core.S index 16019b5961e7..d058fad423c2 100644 --- a/arch/arm/crypto/crct10dif-ce-core.S +++ b/arch/arm/crypto/crct10dif-ce-core.S @@ -342,7 +342,6 @@ CPU_LE( vrev64.8 q7, q7 ) cmp arg3, #16 beq _128_done // exactly 16 left - blt _less_than_16_left // now if there is, load the constants vldr d20, rk1 @@ -353,18 +352,6 @@ CPU_LE( vrev64.8 q7, q7 ) addlt arg3, arg3, #16 blt _get_last_two_regs b _16B_reduction_loop - -_less_than_16_left: - // shl r9, 4 - adr ip, tbl_shf_table + 16 - sub ip, ip, arg3 - vld1.8 {q0}, [ip] - vmov.i8 q9, #0x80 - veor.8 q0, q0, q9 - vtbl.8 d18, {d14-d15}, d0 - vtbl.8 d15, {d14-d15}, d1 - vmov d14, d18 - b _128_done ENDPROC(crc_t10dif_pmull) // precomputed constants From patchwork Fri Jan 25 08:49:15 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ard Biesheuvel X-Patchwork-Id: 156567 Delivered-To: patch@linaro.org Received: by 2002:a02:48:0:0:0:0:0 with SMTP id 69csp100536jaa; Fri, 25 Jan 2019 00:49:28 -0800 (PST) X-Google-Smtp-Source: ALg8bN6OyQ/aqXVHmetTlPsLbj/KvAPo+W6Egw5e62uKcsZjdvNR7ZwhjhxF/T3djLdVTFX+ZaFu X-Received: by 2002:a62:7dcb:: with SMTP id y194mr10111642pfc.113.1548406168559; Fri, 25 Jan 2019 00:49:28 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1548406168; cv=none; d=google.com; s=arc-20160816; b=wXtbablKxbrKU9zrEHGZPZvRly0jTscC2P8V5oZxaZVvSLxOntAiMx/rbIutsdWFPo 6sm1dq6PFnECYSGsrIT1zuQi+i29GiEg0a6Xbqz+Rte4NgJavlu5SPgYwz3zGU+gV/39 rxpwM4XZH4P4uo1ElbwJZEIX9P1/plHCpYjSauuf9L2eS5udEvNDUeoCR+7QDv0TVlNo x6/O+pzJs9/QfTvstBLz47HZE3Gm3AhL2l4+LMl+JTBCP+t3a3CzqNoxGtOxt7U4HZ8y DewluOYpD6EqkELLeapTXo0I66kTThoNoZuTvHF+GjfHDEy/zQIBJ0YYPyzI7/fgNhOW Wa8g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:references:in-reply-to:message-id:date :subject:cc:to:from:dkim-signature; bh=QFSZhvF+yrpzjeTHaCnpll1v88xs3SlfZeNFA3N5zyA=; b=Y8oCunRHcr178ls2ye5o/ayIIOvjt+vhNueNY7JN8TgEDVvACrqDpDgRuRXoxI9A+G uGVw9qAGMAZsAe9lB7OAKkYmfrZHLcXGKG6662if1wk4kgNrfcOYwUpSvKThn7oPBKbv jz2OYWpDF6iT1x7DGV7jzTXOXhYI0ZT75AML3PRefyN7OJUlFifUvYGwWdTEhvRPatIi RJxI5D5s8u3JQMl5+HHwBxiLJZAtgh5qMl0Zo4h1lvn2aCzzm5QFSs+79arflVLRIe3q 0MVU9cIf9Zcr+pOt8XS4mEyh5NjeTMr/QnV5YkuRxExVnFKaojgSGfHEbRSfsD6LfCCj 5YKQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=SPkraV46; spf=pass (google.com: best guess record for domain of linux-crypto-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-crypto-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id e13si25448166pgh.251.2019.01.25.00.49.28; Fri, 25 Jan 2019 00:49:28 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-crypto-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=@linaro.org header.s=google header.b=SPkraV46; spf=pass (google.com: best guess record for domain of linux-crypto-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-crypto-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726669AbfAYIt1 (ORCPT + 3 others); Fri, 25 Jan 2019 03:49:27 -0500 Received: from mail-wr1-f67.google.com ([209.85.221.67]:45455 "EHLO mail-wr1-f67.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726937AbfAYIt1 (ORCPT ); Fri, 25 Jan 2019 03:49:27 -0500 Received: by mail-wr1-f67.google.com with SMTP id t6so9323675wrr.12 for ; Fri, 25 Jan 2019 00:49:26 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=QFSZhvF+yrpzjeTHaCnpll1v88xs3SlfZeNFA3N5zyA=; b=SPkraV46WkjaW96OwSsLHJMGUz4QGmjYGjX4wvViBe4uTu0FlvEpLmiXh907DhbGxt K7cM8SNRpdVFV8YkWhm+E0Ugw1qjVVx0Irlc+nyFjBhcmTQY4sURfRa+4HUejlv6+RdM XxVs1X/+XrwY1jjHIUfVix8D5cbTYvwWYgaeA= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=QFSZhvF+yrpzjeTHaCnpll1v88xs3SlfZeNFA3N5zyA=; b=K8PNHvDtu5QMsI8TfJ87R4b5CmVRSjVNX7mNnLy/PAhr/4sLbfJ3BkPWy1GazP2AN0 02lMMadlYK2KqmbABLv6wDHTD96FQa3S/j1oeRnpa1BGn74ar4VC3Zz0EOobClJ5uZ2h asZWB1vpIZjtCLqmrwVStTltHbK/0b0RreZmt0Pd5pDG+IzOWpfGf5J1FPVK16Za++jM tWI8V1UUw0F4Gy43Bd4awtWYCgyGKW2uLCMuqINEhqazRCVBJsrHapps+ApOT6tYbu9Q N6vD5UywgRbPL/z7YONkxPh6p1Zw3yJPTbSAgR8amDSIJZjJ8IrY9/l8hebUrOz7CYHP zKkQ== X-Gm-Message-State: AJcUukd8CMt2ukF7wR3pcrWnvXAlaKIPN+3Sph+zYYe7YVvJYQVkoPAe W8ivMGFVRRDHWnt2lTHuXnHYQmVw4gVa7w== X-Received: by 2002:a05:6000:12c4:: with SMTP id l4mr10349471wrx.134.1548406165286; Fri, 25 Jan 2019 00:49:25 -0800 (PST) Received: from dogfood.home ([2a01:cb1d:112:6f00:bcd4:806e:230a:673e]) by smtp.gmail.com with ESMTPSA id 125sm112594574wmm.26.2019.01.25.00.49.24 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Fri, 25 Jan 2019 00:49:24 -0800 (PST) From: Ard Biesheuvel To: linux-crypto@vger.kernel.org Cc: linux-arm-kernel@lists.infradead.org, herbert@gondor.apana.org.au, ebiggers@kernel.org, Ard Biesheuvel Subject: [PATCH v2 4/4] crypto: arm64/crct10dif - remove dead code Date: Fri, 25 Jan 2019 09:49:15 +0100 Message-Id: <20190125084915.25411-5-ard.biesheuvel@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20190125084915.25411-1-ard.biesheuvel@linaro.org> References: <20190125084915.25411-1-ard.biesheuvel@linaro.org> Sender: linux-crypto-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-crypto@vger.kernel.org Remove some code that is no longer called now that we make sure never to invoke the SIMD routine with less than 16 bytes of input. Signed-off-by: Ard Biesheuvel --- arch/arm64/crypto/crct10dif-ce-core.S | 11 ----------- 1 file changed, 11 deletions(-) -- 2.17.1 diff --git a/arch/arm64/crypto/crct10dif-ce-core.S b/arch/arm64/crypto/crct10dif-ce-core.S index 9e82e8e8ed05..f7326259c40d 100644 --- a/arch/arm64/crypto/crct10dif-ce-core.S +++ b/arch/arm64/crypto/crct10dif-ce-core.S @@ -497,7 +497,6 @@ CPU_LE( ext v7.16b, v7.16b, v7.16b, #8 ) cmp arg3, #16 b.eq .L_128_done_\@ // exactly 16 left - b.lt .L_less_than_16_left_\@ ldr_l q10, rk1, x8 // rk1 and rk2 in xmm10 __pmull_pre_\p v10 @@ -509,16 +508,6 @@ CPU_LE( ext v7.16b, v7.16b, v7.16b, #8 ) add arg3, arg3, #16 b .L_get_last_two_regs_\@ - -.L_less_than_16_left_\@: - // shl r9, 4 - adr_l x0, tbl_shf_table + 16 - sub x0, x0, arg3 - ld1 {v0.16b}, [x0] - movi v9.16b, #0x80 - eor v0.16b, v0.16b, v9.16b - tbl v7.16b, {v7.16b}, v0.16b - b .L_128_done_\@ .endm ENTRY(crc_t10dif_pmull_p8)