eal: fix PRNG init with HPET enabled
When rte_rand_init is invoked, and the kernel running dpdk does not support *getentropy, at the same time, the cpu does not support rdseed, then rte_rand_init invoked rte_get_timer_cycles. If HPET was enabled in the DPDK build (CONFIG_RTE_LIBEAL_USE_HPET=y) and the system, rte_get_timer_cycles will invoke rte_get_hpet_cycles while *eal_hpet is not available. To fix that, use rte_get_tsc_cycles instead of rte_get_timer_cycles. Fixes: 3f002f069612 ("eal: replace libc-based random generation with LFSR") Cc: stable@dpdk.org Signed-off-by: Tonghao Zhang <xiangxia.m.yue@gmail.com> Acked-by: Mattias Rönnblom <mattias.ronnblom@ericsson.com>
This commit is contained in:
parent
56b27c4b36
commit
9b41c276fd
@ -198,7 +198,7 @@ __rte_random_initial_seed(void)
|
||||
return (uint64_t)rdseed_low | ((uint64_t)rdseed_high << 32);
|
||||
#endif
|
||||
/* second fallback: seed using rdtsc */
|
||||
return rte_get_timer_cycles();
|
||||
return rte_get_tsc_cycles();
|
||||
}
|
||||
|
||||
RTE_INIT(rte_rand_init)
|
||||
|
Loading…
x
Reference in New Issue
Block a user