On Sat, 24 Jul 2021 09:58:44 +0200 Thomas Monjalon <tho...@monjalon.net> wrote:
> 23/07/2021 17:45, Stephen Hemminger: > > The first argument to rte_bsf32_safe was incorrectly declared as > > a 64 bit value. The code only works on 32 bit values and the underlying > > function rte_bsf32 only accepts 32 bit values. This was a mistake > > introduced when the safe version was added and probably cause > > by copy/paste from the 64 bit version. > > > > The bug passed silently under the radar until some other code was > > built with -Wall and -Wextra in C++ and C++ complains about the > > missing cast. > > > > Yes, this is a API signature change, but the original code was wrong. > > It is an inline so not an ABI change. > > > > Fixes: 4e261f551986 ("eal: add 64-bit bsf and 32-bit safe bsf functions") > > Cc: anatoly.bura...@intel.com > > Signed-off-by: Stephen Hemminger <step...@networkplumber.org> > > Acked-by: Tyler Retzlaff <roret...@linux.microsoft.com> > > +Cc: sta...@dpdk.org > > Applied, thanks. > > I think these functions lack a reference to the name Bit Scan Forward. > > > > Tyler wanted to fix a bunch more stuff in these for 21.11 where it will be a bigger API change.