在 kernel_code/drivers/char/random.c 约 900 行处的void add_interrupt_randomness(int irq, int irq_flags) 中有一处判断:
if ((fast_pool->count < 64) &&
!time_after(now, fast_pool->last + HZ))
return;
改为:
if ((fast_pool->count < 64) &&
!time_after(now, fast_pool->last + HZ) &&
nonblocking_pool.initialized)
return;