The patch titled md: use ffz instead of find_first_set to convert multiplier to shift has been added to the -mm tree. Its filename is md-use-ffz-instead-of-find_first_set-to-convert-multiplier-to-shift.patch See http://www.zip.com.au/~akpm/linux/patches/stuff/added-to-mm.txt to find out what to do about this ------------------------------------------------------ Subject: md: use ffz instead of find_first_set to convert multiplier to shift From: Paul Clements <paul.clements@xxxxxxxxxxxx> find_first_set doesn't find the least-significant bit on bigendian machines, so it is really wrong to use it. ffs is closer, but takes an 'int' and we have a 'unsigned long'. So use ffz(~X) to convert a chunksize into a chunkshift. Signed-off-by: Neil Brown <neilb@xxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxx> --- drivers/md/bitmap.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff -puN drivers/md/bitmap.c~md-use-ffz-instead-of-find_first_set-to-convert-multiplier-to-shift drivers/md/bitmap.c --- a/drivers/md/bitmap.c~md-use-ffz-instead-of-find_first_set-to-convert-multiplier-to-shift +++ a/drivers/md/bitmap.c @@ -1444,8 +1444,7 @@ int bitmap_create(mddev_t *mddev) if (err) goto error; - bitmap->chunkshift = find_first_bit(&bitmap->chunksize, - sizeof(bitmap->chunksize)); + bitmap->chunkshift = ffz(~bitmap->chunksize); /* now that chunksize and chunkshift are set, we can use these macros */ chunks = (blocks + CHUNK_BLOCK_RATIO(bitmap) - 1) / _ Patches currently in -mm which might be from paul.clements@xxxxxxxxxxxx are md-new-sysfs-interface-for-setting-bits-in-the-write-intent-bitmap.patch md-use-ffz-instead-of-find_first_set-to-convert-multiplier-to-shift.patch md-allow-set_bitmap_file-to-work-on-64bit-kernel-with-32bit-userspace.patch - To unsubscribe from this list: send the line "unsubscribe mm-commits" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html