1.问题:
mosquitto broker一直连接不上,直到出现random: nonblocking pool is initialized。
2.分析:
初步分析与nonblocking pool初始化有关。
3.解决:
内核打补丁,实现nonblocking pool快速初始化
diff --git a/drivers/char/random.c b/drivers/char/random.c
index 9cd6968e2f92..514f67a98b88 100644
--- a/drivers/char/random.c
+++ b/drivers/char/random.c
@@ -898,7 +898,8 @@ void add_interrupt_randomness(int irq, int irq_flags)
add_interrupt_bench(cycles);
if ((fast_pool->count < 64) &&
- !time_after(now, fast_pool->last + HZ))
+ !time_after(now, fast_pool->last + HZ) &&
+ nonblocking_pool.initialized)
return;
r = nonblocking_pool.initialized ? &input_pool : &nonblocking_pool;