From: Andy Green Date: Thu, 17 May 2018 13:49:12 +0000 (+0800) Subject: eal: fix casts in random functions X-Git-Url: http://git.droids-corp.org/?a=commitdiff_plain;h=d3db77d7d88e1f9227c2847f3355fc3e4bd256e8;p=dpdk.git eal: fix casts in random functions GCC 8.1 warns: In function 'rte_srand': rte_random.h:34:10: warning: conversion to 'long int' from 'long unsigned int' may change the sign of the result [-Wsign-conversion] srand48((long unsigned int)seedval); rte_random.h:51:8: warning: conversion to 'uint64_t' {aka 'long unsigned int'} from 'long int' may change the sign of the result [-Wsign-conversion] val = lrand48(); ^~~~~~~ rte_random.h:53:6: warning: conversion to 'long unsigned int' from 'long int' may change the sign of the result [-Wsign-conversion] val += lrand48(); Fixes: af75078fece3 ("first public release") Cc: stable@dpdk.org Signed-off-by: Andy Green Acked-by: Bruce Richardson --- diff --git a/lib/librte_eal/common/include/rte_random.h b/lib/librte_eal/common/include/rte_random.h index 63bb280880..b2ca1c2096 100644 --- a/lib/librte_eal/common/include/rte_random.h +++ b/lib/librte_eal/common/include/rte_random.h @@ -31,7 +31,7 @@ extern "C" { static inline void rte_srand(uint64_t seedval) { - srand48((long unsigned int)seedval); + srand48((long)seedval); } /** @@ -48,9 +48,9 @@ static inline uint64_t rte_rand(void) { uint64_t val; - val = lrand48(); + val = (uint64_t)lrand48(); val <<= 32; - val += lrand48(); + val += (uint64_t)lrand48(); return val; }