On Thu, 2015-12-17 at 22:59 +0800, Zeng Zhaoxiu wrote: > If the result of adding the first set bit to the mask is power of 2, > the mask must be contiguous. "mask & -mask" can get the first set bit > of mask gracefully. > - if (__ffs64(mask) + hweight64(mask) != fls64(mask)) > { > + inc = (mask & -mask); > + val = mask + inc; > + if ((val & (val - 1)) != 0) { > /* not a contiguous mask ... not handled now! */ Hm. Ok, I can see how that would work, but it doesn't really seem like much of an "improvement" to me? Surely I seem to need much more thinking to understand this. There's no reason to optimise it either, so why should we change it? johannes -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html