Johannes Berg <johannes@xxxxxxxxxxxxxxxx> wrote: > There's a bug in *_encode_bits() in using ~field_multiplier() for > the check whether or not the constant value fits into the field, > this is wrong and clearly ~field_mask() was intended. This was > triggering for me for both constant and non-constant values. > > Additionally, make this case actually into an compile error. > Declaring the extern function that will never exist with just a > warning is pointless as then later we'll just get a link error. > > While at it, also fix the indentation in those lines I'm touching. > > Finally, as suggested by Andy Shevchenko, add some tests and for > that introduce also u8 helpers. The tests don't compile without > the fix, showing that it's necessary. > > Fixes: 00b0c9b82663 ("Add primitives for manipulating bitfields both in host- and fixed-endian.") > Reviewed-by: Andy Shevchenko <andy.shevchenko@xxxxxxxxx> > Signed-off-by: Johannes Berg <johannes@xxxxxxxxxxxxxxxx> 3 patches applied to wireless-drivers-next.git, thanks. e7d4a95da86e bitfield: fix *_encode_bits() 37a3862e1238 bitfield: add u8 helpers 0e2dc70e3d0d bitfield: add tests -- https://patchwork.kernel.org/patch/10476545/ https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches