Messages in this thread | | | From | Tony Luck <> | Date | Thu, 20 Feb 2020 14:29:32 -0800 | Subject | Re: [PATCH] random: always use batched entropy for get_random_u{32,64} |
| |
Also ... what's the deal with a spin_lock on a per-cpu structure?
batch = raw_cpu_ptr(&batched_entropy_u64); spin_lock_irqsave(&batch->batch_lock, flags); if (batch->position % ARRAY_SIZE(batch->entropy_u64) == 0) { extract_crng((u8 *)batch->entropy_u64); batch->position = 0; } ret = batch->entropy_u64[batch->position++]; spin_unlock_irqrestore(&batch->batch_lock, flags);
Could we just disable interrupts and pre-emption around the entropy extraction?
-Tony
| |