[PATCH 2/3] eal: change rte_fls and rte_bsf to return uint32_t
Tyler Retzlaff
roretzla at linux.microsoft.com
Wed Oct 5 17:15:32 CEST 2022
On Wed, Oct 05, 2022 at 11:02:45AM +0200, Thomas Monjalon wrote:
> 08/08/2022 23:21, Tyler Retzlaff:
> > From: Tyler Retzlaff <roretzla at microsoft.com>
> >
>
> You forgot the _safe versions:
>
> --- a/lib/eal/include/rte_common.h
> +++ b/lib/eal/include/rte_common.h
> @@ -660,7 +660,7 @@ rte_bsf32(uint32_t v)
> * @return
> * Returns 0 if ``v`` was 0, otherwise returns 1.
> */
> -static inline int
> +static inline uint32_t
> rte_bsf32_safe(uint32_t v, uint32_t *pos)
> {
> if (v == 0)
> @@ -739,7 +739,7 @@ rte_bsf64(uint64_t v)
> * @return
> * Returns 0 if ``v`` was 0, otherwise returns 1.
> */
> -static inline int
> +static inline uint32_t
> rte_bsf64_safe(uint64_t v, uint32_t *pos)
> {
> if (v == 0)
>
>
>
>
the return values from the _safe versions are `int' treated
like a bool type. they have been left as is to be consistent
with the rest of dpdk return value types.
the non-safe version returns were returning actual values
and not an indication of success or failure.
they could certainly be changed to C99 fixed width types but
if they are changed at all perhaps they should be changed to
_Bool or bool from stdbool.h?
it looks like this change has been merged already but if you
would like to make any further changes let me know i'll take
care of it.
thanks
More information about the dev
mailing list