> +     return snprintf(buf, buf_size, "%.*f%c%s", precision,
> +                     (double)count / powi, *prefix, use_iec ? "i" : "");

I prefer a space between the number and the postfix (if a postfix is present), 
e.g. "1.23 M", so when followed by the unit, it becomes "1.23 Mbit/s" rather 
than "1.23M bit/s".

> +/**
> + * Converts the uint64_t value provided to a human-readable string.
> + * It null-terminates the string, truncating the data if needed.

Please add some examples showing the output formatting.
E.g.: "123 M", "12.3 M",
"12 M", " 12 M" or "12.0 M",
"1.00  ", "  1.00", or "     1", or something else?

> + *
> + * @param buf
> + *     Buffer to write the string to.
> + * @param buf_size
> + *     Size of the buffer.
> + * @param count
> + *     Number to convert.
> + * @param use_iec
> + *     If true, use IEC units (1024-based), otherwise use SI units
> (1000-based).
> + * @return
> + *     Number of characters written (not including the null-
> terminator),
> + *     or that would have been required when the buffer is too small.
> + */
> +int
> +rte_size_to_str(char *buf, int buf_size,
> +             uint64_t count, bool use_iec);
> +

Reply via email to