From: "Jason A. Donenfeld" <Jason@zx2c4.com> To: Ard Biesheuvel <ard.biesheuvel@linaro.org> Cc: LKML <linux-kernel@vger.kernel.org>, Netdev <netdev@vger.kernel.org>, Linux Crypto Mailing List <linux-crypto@vger.kernel.org>, David Miller <davem@davemloft.net>, Greg Kroah-Hartman <gregkh@linuxfoundation.org>, Samuel Neves <sneves@dei.uc.pt>, Andrew Lutomirski <luto@kernel.org>, Jean-Philippe Aumasson <jeanphilippe.aumasson@gmail.com>, Russell King - ARM Linux <linux@armlinux.org.uk>, linux-arm-kernel@lists.infradead.org Subject: Re: [PATCH net-next v6 07/23] zinc: ChaCha20 ARM and ARM64 implementations Date: Sat, 29 Sep 2018 04:20:24 +0200 [thread overview] Message-ID: <CAHmME9qtN8kiKnMHTa76r9a_5Ou_s3WhAMT_HnH7-1FeoHUOZg@mail.gmail.com> (raw) In-Reply-To: <CAKv+Gu8knzzmK4_KouFQWKzMdHFgEsk-CtBrcuAvk0bYkDFO=w@mail.gmail.com> Hi Ard, On Fri, Sep 28, 2018 at 6:02 PM Ard Biesheuvel <ard.biesheuvel@linaro.org> wrote: > Please put comments like this below the --- git-notes is nice for this indeed. > Are these CONFIG_ symbols defined anywhere at this point? Yes, they're introduced in the first zinc commit. There's no git-blame on git.kernel.org, presumably because it's expensive to compute, but there is on my personal instance, so this might help: https://git.zx2c4.com/linux-dev/blame/lib/zinc/Kconfig?h=jd/wireguard > In any case, I don't think these is a reason for these, at least not > on ARM/arm64. The 64-bitness is implied in both cases You mean to say that since these nobs are def_bool y and are essentially "depends on ARM", then I should just straight up use CONFIG_ARM? I had thought about this, but figured this would make it easier to later make these optional or have other options block them need be, or even if the dependencies and requirements for having them changes (for example, with UML on x86). I think doing it this way gives us some flexibility later on. So if that's a compelling enough reason, I'd like to keep those. > and the > dependency on !CPU_32v3 you introduce (looking at the version of > Kconfig at the end of the series) seems spurious to me. Was that added > because of some kbuild robot report? (we don't support ARMv3 in the > kernel but ARCH_RPC is built in v3 mode because of historical reasons > while the actual core is a v4) I added the !CPU_32v3 in my development tree after posting v6, so good to hear you're just looking straight at the updated tree. If you see things jump out in there prior to me posting v7, don't hesitate to let me know. The reason it was added was indeed because of: https://lists.01.org/pipermail/kbuild-all/2018-September/053114.html -- exactly what you suspected, ARCH_RPC. Have a better suggestion than !CPU_32v3? It seems to me like so long as the kernel has CPU_32v3 as a thing in any form, I should mark Zinc as not supporting it, since we'll certainly be at least v4 and up. (Do you guys have any old Acorn ARM610 boxes sitting around for old time's sake at LinaroHQ? ;-) > > +#endif > > + > > No need to make asmlinkage declarations conditional Yep, addressed in the IS_ENABLED cleanup. > > if (IS_ENABLED()) Sorted. > > """ > if (!IS_ENABLED(CONFIG_ARM)) > return false; > > hchacha20_arm(x, derived_key); > return true; > """ > > and drop the #ifdefs Also sorted. Regards, Jason
WARNING: multiple messages have this Message-ID (diff)
From: Jason@zx2c4.com (Jason A. Donenfeld) To: linux-arm-kernel@lists.infradead.org Subject: [PATCH net-next v6 07/23] zinc: ChaCha20 ARM and ARM64 implementations Date: Sat, 29 Sep 2018 04:20:24 +0200 [thread overview] Message-ID: <CAHmME9qtN8kiKnMHTa76r9a_5Ou_s3WhAMT_HnH7-1FeoHUOZg@mail.gmail.com> (raw) In-Reply-To: <CAKv+Gu8knzzmK4_KouFQWKzMdHFgEsk-CtBrcuAvk0bYkDFO=w@mail.gmail.com> Hi Ard, On Fri, Sep 28, 2018 at 6:02 PM Ard Biesheuvel <ard.biesheuvel@linaro.org> wrote: > Please put comments like this below the --- git-notes is nice for this indeed. > Are these CONFIG_ symbols defined anywhere at this point? Yes, they're introduced in the first zinc commit. There's no git-blame on git.kernel.org, presumably because it's expensive to compute, but there is on my personal instance, so this might help: https://git.zx2c4.com/linux-dev/blame/lib/zinc/Kconfig?h=jd/wireguard > In any case, I don't think these is a reason for these, at least not > on ARM/arm64. The 64-bitness is implied in both cases You mean to say that since these nobs are def_bool y and are essentially "depends on ARM", then I should just straight up use CONFIG_ARM? I had thought about this, but figured this would make it easier to later make these optional or have other options block them need be, or even if the dependencies and requirements for having them changes (for example, with UML on x86). I think doing it this way gives us some flexibility later on. So if that's a compelling enough reason, I'd like to keep those. > and the > dependency on !CPU_32v3 you introduce (looking at the version of > Kconfig at the end of the series) seems spurious to me. Was that added > because of some kbuild robot report? (we don't support ARMv3 in the > kernel but ARCH_RPC is built in v3 mode because of historical reasons > while the actual core is a v4) I added the !CPU_32v3 in my development tree after posting v6, so good to hear you're just looking straight at the updated tree. If you see things jump out in there prior to me posting v7, don't hesitate to let me know. The reason it was added was indeed because of: https://lists.01.org/pipermail/kbuild-all/2018-September/053114.html -- exactly what you suspected, ARCH_RPC. Have a better suggestion than !CPU_32v3? It seems to me like so long as the kernel has CPU_32v3 as a thing in any form, I should mark Zinc as not supporting it, since we'll certainly be at least v4 and up. (Do you guys have any old Acorn ARM610 boxes sitting around for old time's sake at LinaroHQ? ;-) > > +#endif > > + > > No need to make asmlinkage declarations conditional Yep, addressed in the IS_ENABLED cleanup. > > if (IS_ENABLED()) Sorted. > > """ > if (!IS_ENABLED(CONFIG_ARM)) > return false; > > hchacha20_arm(x, derived_key); > return true; > """ > > and drop the #ifdefs Also sorted. Regards, Jason
next prev parent reply other threads:[~2018-09-29 2:20 UTC|newest] Thread overview: 213+ messages / expand[flat|nested] mbox.gz Atom feed top 2018-09-25 14:55 [PATCH net-next v6 00/23] WireGuard: Secure Network Tunnel Jason A. Donenfeld 2018-09-25 14:56 ` [PATCH net-next v6 01/23] asm: simd context helper API Jason A. Donenfeld 2018-09-28 8:28 ` Ard Biesheuvel 2018-09-28 8:28 ` Ard Biesheuvel 2018-09-28 8:49 ` Ard Biesheuvel 2018-09-28 8:49 ` Ard Biesheuvel 2018-09-28 13:47 ` Jason A. Donenfeld 2018-09-28 13:52 ` Ard Biesheuvel 2018-09-28 13:59 ` Jason A. Donenfeld 2018-09-28 14:00 ` Ard Biesheuvel 2018-09-28 14:01 ` Jason A. Donenfeld 2018-09-30 4:20 ` Joe Perches 2018-09-30 5:35 ` Andy Lutomirski 2018-10-01 1:43 ` Jason A. Donenfeld 2018-10-02 7:18 ` Ard Biesheuvel 2018-09-28 13:45 ` Jason A. Donenfeld 2018-09-25 14:56 ` [PATCH net-next v6 02/23] zinc: introduce minimal cryptography library Jason A. Donenfeld 2018-09-25 18:33 ` Joe Perches 2018-09-25 19:43 ` Jason A. Donenfeld 2018-09-25 20:00 ` Andy Lutomirski 2018-09-25 20:02 ` Jason A. Donenfeld 2018-09-25 20:05 ` Joe Perches 2018-09-25 20:12 ` Jason A. Donenfeld 2018-09-25 20:21 ` Joe Perches 2018-09-25 20:54 ` Jason A. Donenfeld 2018-09-25 21:02 ` Joe Perches 2018-09-25 21:03 ` Jason A. Donenfeld 2018-09-25 14:56 ` [PATCH net-next v6 03/23] zinc: ChaCha20 generic C implementation and selftest Jason A. Donenfeld 2018-09-28 15:40 ` Ard Biesheuvel 2018-09-28 15:40 ` Ard Biesheuvel 2018-09-29 1:53 ` Jason A. Donenfeld 2018-10-02 3:15 ` Herbert Xu 2018-10-02 3:18 ` Jason A. Donenfeld 2018-09-25 14:56 ` [PATCH net-next v6 04/23] zinc: ChaCha20 x86_64 implementation Jason A. Donenfeld 2018-09-28 15:47 ` Ard Biesheuvel 2018-09-28 15:47 ` Ard Biesheuvel 2018-09-29 2:01 ` Jason A. Donenfeld 2018-09-29 7:56 ` Borislav Petkov 2018-09-29 8:00 ` Ard Biesheuvel 2018-09-29 8:11 ` Borislav Petkov 2018-09-29 8:27 ` Abel Vesa 2018-10-02 1:09 ` Jason A. Donenfeld 2018-10-02 1:07 ` Jason A. Donenfeld 2018-10-02 3:18 ` Herbert Xu 2018-10-02 3:20 ` Jason A. Donenfeld 2018-09-25 14:56 ` [PATCH net-next v6 05/23] zinc: import Andy Polyakov's ChaCha20 ARM and ARM64 implementations Jason A. Donenfeld 2018-09-25 14:56 ` Jason A. Donenfeld 2018-09-28 15:49 ` Ard Biesheuvel 2018-09-28 15:49 ` Ard Biesheuvel 2018-09-28 15:51 ` Ard Biesheuvel 2018-09-28 15:51 ` Ard Biesheuvel 2018-09-28 15:51 ` Ard Biesheuvel 2018-09-28 15:57 ` Jason A. Donenfeld 2018-09-28 15:57 ` Jason A. Donenfeld 2018-09-25 14:56 ` [PATCH net-next v6 06/23] zinc: port " Jason A. Donenfeld 2018-09-25 14:56 ` Jason A. Donenfeld 2018-09-25 14:56 ` [PATCH net-next v6 07/23] zinc: " Jason A. Donenfeld 2018-09-25 14:56 ` Jason A. Donenfeld 2018-09-26 8:59 ` Ard Biesheuvel 2018-09-26 8:59 ` Ard Biesheuvel 2018-09-26 8:59 ` Ard Biesheuvel 2018-09-26 13:32 ` Jason A. Donenfeld 2018-09-26 13:32 ` Jason A. Donenfeld 2018-09-26 14:02 ` Ard Biesheuvel 2018-09-26 14:02 ` Ard Biesheuvel 2018-09-26 14:02 ` Ard Biesheuvel 2018-09-26 15:41 ` Jason A. Donenfeld 2018-09-26 15:41 ` Jason A. Donenfeld 2018-09-26 16:54 ` Ard Biesheuvel 2018-09-26 16:54 ` Ard Biesheuvel 2018-09-26 16:54 ` Ard Biesheuvel 2018-09-26 17:07 ` Jason A. Donenfeld 2018-09-26 17:07 ` Jason A. Donenfeld 2018-09-26 17:37 ` Eric Biggers 2018-09-26 17:37 ` Eric Biggers 2018-09-26 17:46 ` Jason A. Donenfeld 2018-09-26 17:46 ` Jason A. Donenfeld 2018-09-26 15:41 ` Ard Biesheuvel 2018-09-26 15:41 ` Ard Biesheuvel 2018-09-26 15:41 ` Ard Biesheuvel 2018-09-26 15:45 ` Jason A. Donenfeld 2018-09-26 15:45 ` Jason A. Donenfeld 2018-09-26 15:49 ` Jason A. Donenfeld 2018-09-26 15:49 ` Jason A. Donenfeld 2018-09-26 15:51 ` Ard Biesheuvel 2018-09-26 15:51 ` Ard Biesheuvel 2018-09-26 15:51 ` Ard Biesheuvel 2018-09-26 15:58 ` Jason A. Donenfeld 2018-09-26 15:58 ` Jason A. Donenfeld 2018-09-27 0:04 ` Jason A. Donenfeld 2018-09-27 0:04 ` Jason A. Donenfeld 2018-09-27 13:26 ` Jason A. Donenfeld 2018-09-27 13:26 ` Jason A. Donenfeld 2018-09-27 15:19 ` Jason A. Donenfeld 2018-09-27 15:19 ` Jason A. Donenfeld 2018-09-27 15:19 ` Jason A. Donenfeld 2018-09-27 16:26 ` Andy Lutomirski 2018-09-27 16:26 ` Andy Lutomirski 2018-09-27 17:06 ` Jason A. Donenfeld 2018-09-27 17:06 ` Jason A. Donenfeld 2018-09-26 16:21 ` Andy Lutomirski 2018-09-26 16:21 ` Andy Lutomirski 2018-09-26 16:21 ` Andy Lutomirski 2018-09-26 17:03 ` Jason A. Donenfeld 2018-09-26 17:03 ` Jason A. Donenfeld 2018-09-26 17:08 ` Ard Biesheuvel 2018-09-26 17:08 ` Ard Biesheuvel 2018-09-26 17:08 ` Ard Biesheuvel 2018-09-26 17:23 ` Andy Lutomirski 2018-09-26 17:23 ` Andy Lutomirski 2018-09-26 14:36 ` Andrew Lunn 2018-09-26 14:36 ` Andrew Lunn 2018-09-26 15:25 ` Jason A. Donenfeld 2018-09-26 15:25 ` Jason A. Donenfeld 2018-09-28 16:01 ` Ard Biesheuvel 2018-09-28 16:01 ` Ard Biesheuvel 2018-09-28 16:01 ` Ard Biesheuvel 2018-09-29 2:20 ` Jason A. Donenfeld [this message] 2018-09-29 2:20 ` Jason A. Donenfeld 2018-09-29 6:16 ` Ard Biesheuvel 2018-09-29 6:16 ` Ard Biesheuvel 2018-09-30 2:33 ` Jason A. Donenfeld 2018-09-30 2:33 ` Jason A. Donenfeld 2018-09-30 2:33 ` Jason A. Donenfeld 2018-09-25 14:56 ` [PATCH net-next v6 08/23] zinc: ChaCha20 MIPS32r2 implementation Jason A. Donenfeld 2018-09-25 14:56 ` [PATCH net-next v6 09/23] zinc: Poly1305 generic C implementations and selftest Jason A. Donenfeld 2018-09-25 14:56 ` [PATCH net-next v6 10/23] zinc: Poly1305 x86_64 implementation Jason A. Donenfeld 2018-09-25 14:56 ` [PATCH net-next v6 11/23] zinc: import Andy Polyakov's Poly1305 ARM and ARM64 implementations Jason A. Donenfeld 2018-09-25 14:56 ` Jason A. Donenfeld 2018-10-03 6:12 ` Eric Biggers 2018-10-03 6:12 ` Eric Biggers 2018-10-03 7:58 ` Ard Biesheuvel 2018-10-03 7:58 ` Ard Biesheuvel 2018-10-03 7:58 ` Ard Biesheuvel 2018-10-03 14:08 ` Jason A. Donenfeld 2018-10-03 14:08 ` Jason A. Donenfeld 2018-10-03 14:45 ` Jason A. Donenfeld 2018-10-03 14:45 ` Jason A. Donenfeld 2018-09-25 14:56 ` [PATCH net-next v6 12/23] zinc: " Jason A. Donenfeld 2018-09-25 14:56 ` Jason A. Donenfeld 2018-09-25 14:56 ` [PATCH net-next v6 13/23] zinc: Poly1305 MIPS32r2 and MIPS64 implementations Jason A. Donenfeld 2018-09-25 14:56 ` [PATCH net-next v6 14/23] zinc: ChaCha20Poly1305 construction and selftest Jason A. Donenfeld 2018-09-25 14:56 ` [PATCH net-next v6 15/23] zinc: BLAKE2s generic C implementation " Jason A. Donenfeld 2018-09-25 14:56 ` [PATCH net-next v6 16/23] zinc: BLAKE2s x86_64 implementation Jason A. Donenfeld 2018-09-25 14:56 ` [PATCH net-next v6 17/23] zinc: Curve25519 generic C implementations and selftest Jason A. Donenfeld 2018-09-25 18:38 ` Joe Perches 2018-09-25 14:56 ` [PATCH net-next v6 18/23] zinc: Curve25519 x86_64 implementation Jason A. Donenfeld 2018-09-25 14:56 ` [PATCH net-next v6 19/23] zinc: Curve25519 ARM implementation Jason A. Donenfeld 2018-09-25 14:56 ` Jason A. Donenfeld 2018-10-02 16:59 ` Ard Biesheuvel 2018-10-02 16:59 ` Ard Biesheuvel 2018-10-02 16:59 ` Ard Biesheuvel 2018-10-02 21:35 ` Richard Weinberger 2018-10-02 21:35 ` Richard Weinberger 2018-10-03 1:03 ` Jason A. Donenfeld 2018-10-03 1:03 ` Jason A. Donenfeld 2018-10-05 15:05 ` D. J. Bernstein 2018-10-05 15:05 ` D. J. Bernstein 2018-10-05 15:16 ` Ard Biesheuvel 2018-10-05 15:16 ` Ard Biesheuvel 2018-10-05 15:16 ` Ard Biesheuvel 2018-10-05 18:40 ` Jason A. Donenfeld 2018-10-05 18:40 ` Jason A. Donenfeld 2018-10-03 3:10 ` Jason A. Donenfeld 2018-10-03 3:10 ` Jason A. Donenfeld 2018-09-25 14:56 ` [PATCH net-next v6 20/23] crypto: port Poly1305 to Zinc Jason A. Donenfeld 2018-09-25 14:56 ` [PATCH net-next v6 21/23] crypto: port ChaCha20 " Jason A. Donenfeld 2018-10-02 3:26 ` Herbert Xu 2018-10-02 3:31 ` Jason A. Donenfeld 2018-10-03 5:56 ` Eric Biggers 2018-10-03 14:01 ` Jason A. Donenfeld 2018-09-25 14:56 ` [PATCH net-next v6 22/23] security/keys: rewrite big_key crypto to use Zinc Jason A. Donenfeld 2018-09-25 14:56 ` [PATCH net-next v6 23/23] net: WireGuard secure network tunnel Jason A. Donenfeld 2018-09-26 16:00 ` Ivan Labáth 2018-09-26 16:04 ` Jason A. Donenfeld 2018-11-05 13:06 ` Ivan Labáth 2018-11-12 23:53 ` Jason A. Donenfeld 2018-11-13 0:10 ` Dave Taht 2018-11-13 0:13 ` Jason A. Donenfeld 2018-09-27 1:15 ` Andrew Lunn 2018-09-27 22:37 ` Jason A. Donenfeld 2018-09-28 1:09 ` Jason A. Donenfeld 2018-09-28 15:01 ` Andrew Lunn 2018-09-28 15:04 ` Jason A. Donenfeld 2018-10-03 11:15 ` Ard Biesheuvel 2018-10-03 11:15 ` Ard Biesheuvel 2018-10-03 14:12 ` Jason A. Donenfeld 2018-10-03 14:13 ` Ard Biesheuvel 2018-10-03 14:25 ` Ard Biesheuvel 2018-10-03 14:28 ` Jason A. Donenfeld 2018-09-27 18:29 ` [PATCH net-next v6 00/23] WireGuard: Secure Network Tunnel Eric Biggers 2018-09-27 21:35 ` Jason A. Donenfeld 2018-09-28 1:17 ` Eric Biggers 2018-09-28 2:35 ` Jason A. Donenfeld 2018-09-28 4:55 ` Eric Biggers 2018-09-28 5:46 ` Jason A. Donenfeld 2018-09-28 7:52 ` Ard Biesheuvel 2018-09-28 13:40 ` Jason A. Donenfeld 2018-10-02 3:39 ` Herbert Xu 2018-10-02 3:45 ` Jason A. Donenfeld 2018-10-02 3:49 ` Herbert Xu 2018-10-02 6:04 ` Ard Biesheuvel 2018-10-02 6:43 ` Richard Weinberger 2018-10-02 12:22 ` Jason A. Donenfeld 2018-10-03 6:49 ` Eric Biggers 2018-10-05 13:13 ` Jason A. Donenfeld 2018-10-05 13:37 ` Richard Weinberger 2018-10-05 13:46 ` Jason A. Donenfeld 2018-10-05 13:53 ` Richard Weinberger 2018-10-05 17:50 ` David Miller 2018-09-28 17:47 ` Ard Biesheuvel 2018-09-29 2:40 ` Jason A. Donenfeld 2018-09-29 5:35 ` Willy Tarreau
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=CAHmME9qtN8kiKnMHTa76r9a_5Ou_s3WhAMT_HnH7-1FeoHUOZg@mail.gmail.com \ --to=jason@zx2c4.com \ --cc=ard.biesheuvel@linaro.org \ --cc=davem@davemloft.net \ --cc=gregkh@linuxfoundation.org \ --cc=jeanphilippe.aumasson@gmail.com \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-crypto@vger.kernel.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux@armlinux.org.uk \ --cc=luto@kernel.org \ --cc=netdev@vger.kernel.org \ --cc=sneves@dei.uc.pt \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.