From patchwork Mon Jun 24 17:38:29 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ard Biesheuvel X-Patchwork-Id: 11013839 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 5272D76 for ; Mon, 24 Jun 2019 17:39:21 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 41DB428A50 for ; Mon, 24 Jun 2019 17:39:21 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 32E2628A59; Mon, 24 Jun 2019 17:39:21 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-8.0 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id C7BDC28A50 for ; Mon, 24 Jun 2019 17:39:20 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728053AbfFXRjU (ORCPT ); Mon, 24 Jun 2019 13:39:20 -0400 Received: from mail-wm1-f65.google.com ([209.85.128.65]:40632 "EHLO mail-wm1-f65.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727806AbfFXRjU (ORCPT ); Mon, 24 Jun 2019 13:39:20 -0400 Received: by mail-wm1-f65.google.com with SMTP id v19so177748wmj.5 for ; Mon, 24 Jun 2019 10:39:18 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=vkM3pzv0qaT9ifNnV69G72X1aA/dSIdngKbA6f9L9fY=; b=QfsDv58LbAH8cF3V4G/2L5+c7LJ29FHs0XfEC6n7avNrzdSgDotlJCn10i3fqI/jZc ih7K94fQSLld6liaWtuqOw3YwyzQWybXLW3wI6HMqUkS067Kjrk+f4ZyGIFgB5bL6KLc B/49i7nsBjlsflmhFrNJxOrEJM3F0tjU6dr/mJP9KtI76og2oSrBG8u4d3In0NdNzTNp Hd6ha2Pml7eEDgaVle/FiF5ehhaNUcmOXAiLXyP1yqTk/35kuktOaDLyNppfm9DPHpuq Fc/w5Uo8yIlaNU3JGOY4Rr3KRZwYILJ9X1eNmRol62GrYP7jcQS7LCCHBvFYv90+gVJV JZ5g== 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:mime-version :content-transfer-encoding; bh=vkM3pzv0qaT9ifNnV69G72X1aA/dSIdngKbA6f9L9fY=; b=bhHLYUvXBsyvRJzM02fX+VDKLkJN8tLXF32ibEt9Bkst6IgteZH57v/zWkQ7HgqyfQ 0Fgjiz400wFvM8Mq5ea32errj4jTxRPTuyiADOqhDj30BU5Wo0Q1AJf/Wq1aZe8sGjTS JfjNYS/03ddZ+VpHhxAooQ7TWvF6Z4xdkU6PQErpf/ZdD/5/IlqV5dda7sZlob25yqPI rXEc7cVLvfcHNB+y7B7jR5o68vQRdRAfVyukVohX+mF161gzKlWPpe1X/tvzhl0R816d r7f2jteG072kqvMsMHrOiNQndYX7JO+SRCaJm4/8+snoZKozHWXsYHgirCjbaAZEOWi9 AHbg== X-Gm-Message-State: APjAAAW/YFBzk3NUmYeEsnfJTH4VbfBPe0CQH8ndXGovWjaiJzQ86Cl0 Y/7rVcFea9pSeJ4Xz9BrScSaAz5uskA= X-Google-Smtp-Source: APXvYqyElJATRw5v1T9X92K67zCfWlZvGK19xCOXxmhbrcR4RF7NZ+NAjMhs99H6KrkCX+ocbfzPDg== X-Received: by 2002:a7b:c7c2:: with SMTP id z2mr15780801wmk.147.1561397957796; Mon, 24 Jun 2019 10:39:17 -0700 (PDT) Received: from localhost.localdomain (aaubervilliers-681-1-10-211.w90-88.abo.wanadoo.fr. [90.88.131.211]) by smtp.gmail.com with ESMTPSA id s10sm260787wmf.8.2019.06.24.10.39.16 (version=TLS1_3 cipher=AEAD-AES256-GCM-SHA384 bits=256/256); Mon, 24 Jun 2019 10:39:17 -0700 (PDT) From: Ard Biesheuvel To: linux-crypto@vger.kernel.org Cc: herbert@gondor.apana.org.au, ebiggers@kernel.org, linux-arm-kernel@lists.infradead.org, steve.capper@arm.com, Ard Biesheuvel Subject: [PATCH 0/2] crypto: arm64/aes-ce - implement 5-way interleave for some modes Date: Mon, 24 Jun 2019 19:38:29 +0200 Message-Id: <20190624173831.8375-1-ard.biesheuvel@linaro.org> X-Mailer: git-send-email 2.20.1 MIME-Version: 1.0 Sender: linux-crypto-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-crypto@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP As it turns out, even a 4-way interleave is not sufficient to saturate the ThunderX2 pipeline with AES instructions, so this series implements 5-way interleave for modes that can be modified without running out of registers to maintain chaining mode state across the encryption operation, i.e., ECB, CBC-decryption and CTR. Ard Biesheuvel (2): crypto: arm64/aes-ce - add 5 way interleave routines crypto: arm64/aes-ce - implement 5 way interleave for ECB, CBC and CTR arch/arm64/crypto/aes-ce.S | 60 ++++++---- arch/arm64/crypto/aes-modes.S | 118 +++++++++++++++----- arch/arm64/crypto/aes-neon.S | 48 +------- 3 files changed, 127 insertions(+), 99 deletions(-)