[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <AA5D5BE5-79EC-4149-BD54-2C4286CFA291@amacapital.net>
Date: Thu, 20 Sep 2018 21:52:04 -0700
From: Andy Lutomirski <luto@...capital.net>
To: Ard Biesheuvel <ard.biesheuvel@...aro.org>
Cc: "Jason A. Donenfeld" <Jason@...c4.com>,
Andrew Lunn <andrew@...n.ch>, Arnd Bergmann <arnd@...db.de>,
Eric Biggers <ebiggers@...gle.com>,
LKML <linux-kernel@...r.kernel.org>,
Netdev <netdev@...r.kernel.org>,
Linux Crypto Mailing List <linux-crypto@...r.kernel.org>,
David Miller <davem@...emloft.net>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
Samuel Neves <sneves@....uc.pt>,
Andrew Lutomirski <luto@...nel.org>,
Jean-Philippe Aumasson <jeanphilippe.aumasson@...il.com>
Subject: Re: [PATCH net-next v5 02/20] zinc: introduce minimal cryptography library
> On Sep 20, 2018, at 9:30 PM, Ard Biesheuvel <ard.biesheuvel@...aro.org> wrote:
>
>> On 20 September 2018 at 21:15, Jason A. Donenfeld <Jason@...c4.com> wrote:
>> Hi Andy,
>>
>>> On Fri, Sep 21, 2018 at 5:23 AM Andy Lutomirski <luto@...capital.net> wrote:
>>> At the risk on suggesting something awful: on x86_64, since we turn preemption off for simd, it wouldn’t be *completely* insane to do the crypto on the irq stack. It would look like:
>>>
>>> kernel_fpu_call(func, arg);
>>>
>>> And this helper would disable preemption, enable FPU, switch to the irq stack, call func(arg), disable FPU, enable preemption, and return. And we can have large IRQ stacks.
>>>
>>> I refuse to touch this with a ten-foot pole until the lazy FPU restore patches land.
>>
>> Haha. That's fun, and maybe we'll do that at some point, but I have
>> some other reasons too for being on a workqueue now.
>>
>
> Kernel mode crypto is callable from any context, and SIMD can be used
> in softirq context on arm64 (and on x86, even from hardirq context
> IIRC if the interrupt is taken from userland), in which case we'd
> already be on the irq stack.
The x86_64 irq stack handles nesting already.
Powered by blists - more mailing lists