On Fri, Jan 29, 2021 at 12:45 PM Yury Norov <yury.norov@xxxxxxxxx> wrote:
Bitmap operations are much simpler and faster in case of small bitmaps, whicn fit into a single word. In linux/bitmap.h we have a machinery that allows compiler to replace actual function call with a few instructions if bitmaps passed into the function is small and its size is known at compile time. find_*_bit() API lacks this functionality; despite users will benefit from it a lot. One important example is cpumask subsystem, when NR_CPUS <= BITS_PER_LONG. In the very best case, the compiler may replace a find_*_bit() call for such a bitmap with a single ffs or ffz instruction. Tools is synchronized with new implementation where needed.
Sorry for the broken enumeration . If it's too confusing, please let me know and I'll resend.