From: vignesh babu Replace n & (n - 1) with is_power_of_2(n) Signed-off-by: vignesh babu Cc: Signed-off-by: Andrew Morton --- fs/ext2/super.c | 3 ++- fs/ext4/super.c | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff -puN fs/ext2/super.c~ext2-4-use-is_power_of_2 fs/ext2/super.c --- a/fs/ext2/super.c~ext2-4-use-is_power_of_2 +++ a/fs/ext2/super.c @@ -30,6 +30,7 @@ #include #include #include +#include #include #include "ext2.h" #include "xattr.h" @@ -864,7 +865,7 @@ static int ext2_fill_super(struct super_ sbi->s_inode_size = le16_to_cpu(es->s_inode_size); sbi->s_first_ino = le32_to_cpu(es->s_first_ino); if ((sbi->s_inode_size < EXT2_GOOD_OLD_INODE_SIZE) || - (sbi->s_inode_size & (sbi->s_inode_size - 1)) || + !is_power_of_2(sbi->s_inode_size) || (sbi->s_inode_size > blocksize)) { printk ("EXT2-fs: unsupported inode size: %d\n", sbi->s_inode_size); diff -puN fs/ext4/super.c~ext2-4-use-is_power_of_2 fs/ext4/super.c --- a/fs/ext4/super.c~ext2-4-use-is_power_of_2 +++ a/fs/ext4/super.c @@ -1738,7 +1738,7 @@ static int ext4_fill_super (struct super if (EXT4_HAS_INCOMPAT_FEATURE(sb, EXT4_FEATURE_INCOMPAT_64BIT)) { if (sbi->s_desc_size < EXT4_MIN_DESC_SIZE_64BIT || sbi->s_desc_size > EXT4_MAX_DESC_SIZE || - sbi->s_desc_size & (sbi->s_desc_size - 1)) { + !is_power_of_2(sbi->s_desc_size)) { printk(KERN_ERR "EXT4-fs: unsupported descriptor size %lu\n", sbi->s_desc_size); _