On Wed, Dec 15, 2021 at 12:41 AM David Laight <David.Laight@xxxxxxxxxx> wrote: > > From: Yury Norov > > Sent: 14 December 2021 19:43 > ... > > > > I think that for long bitmaps the most time consuming operation is moving > > data to L1, and for short bitmaps the difference between approaches is > > barely measurable. > > > > But hweght_long on each iteration can't be more effective than the current > > version. So, I'll drop this patch for v2 and keep things unchanged. > > Actually do bitmap_full/empty() calls make any sense at all? > The result is stale since bitmaps are designed to do locked operations. > If you have a lock covering the bitmap then you should be using > something that uses non-locked accesses. > Rightly or wrongly that isn't the bitmap api. Are you talking about __{set,clear}_bit()? include/asm-generic/bitops/non-atomic.h