Hey Thomas, On Wed, Nov 9, 2016 at 10:40 PM, Thomas Gleixner <tglx@xxxxxxxxxxxxx> wrote: > That preempt_disable() prevents merily preemption as the name says, but it > wont prevent softirq handlers from running on return from interrupt. So > what's the point? Oh, interesting. Okay, then in that case the proposed define wouldn't be useful for my purposes. What clever tricks do I have at my disposal, then? >> If not, do you have a better solution for me (which doesn't >> involve using kmalloc or choosing a different crypto primitive)? > > What's wrong with using kmalloc? It's cumbersome and potentially slow. This is crypto code, where speed matters a lot. Avoiding allocations is usually the lowest hanging fruit among optimizations. To give you some idea, here's a somewhat horrible solution using kmalloc I hacked together: [1]. I'm not to happy with what it looks like, code-wise, and there's around a 16% slowdown, which isn't nice either. [1] https://git.zx2c4.com/WireGuard/commit/?h=jd/curve25519-kmalloc