Signed-off-by: Robert P. J. Day <[email protected]>
---
diff --git a/fs/ext4/super.c b/fs/ext4/super.c
index 2958f4e..479d5ef 100644
--- a/fs/ext4/super.c
+++ b/fs/ext4/super.c
@@ -1479,7 +1479,7 @@ set_qf_format:
return 0;
if (option < 0 || option > (1 << 30))
return 0;
- if (option & (option - 1)) {
+ if (!is_power_of_2(option)) {
printk(KERN_ERR "EXT4-fs: inode_readahead_blks"
" must be a power of 2\n");
return 0;
@@ -2092,7 +2092,7 @@ static ssize_t inode_readahead_blks_store(struct ext4_attr *a,
return -EINVAL;
/* inode_readahead_blks must be a power of 2 */
- if (t & (t-1))
+ if (!is_power_of_2(t))
return -EINVAL;
sbi->s_inode_readahead_blks = t;
========================================================================
Robert P. J. Day Waterloo, Ontario, CANADA
Linux Consulting, Training and Annoying Kernel Pedantry.
Web page: http://crashcourse.ca
Linked In: http://www.linkedin.com/in/rpjday
Twitter: http://twitter.com/rpjday
========================================================================
Robert P. J. Day wrote:
> Signed-off-by: Robert P. J. Day <[email protected]>
Looks fine, thanks.
Reviewed-by: Eric Sandeen <[email protected]>
> ---
>
> diff --git a/fs/ext4/super.c b/fs/ext4/super.c
> index 2958f4e..479d5ef 100644
> --- a/fs/ext4/super.c
> +++ b/fs/ext4/super.c
> @@ -1479,7 +1479,7 @@ set_qf_format:
> return 0;
> if (option < 0 || option > (1 << 30))
> return 0;
> - if (option & (option - 1)) {
> + if (!is_power_of_2(option)) {
> printk(KERN_ERR "EXT4-fs: inode_readahead_blks"
> " must be a power of 2\n");
> return 0;
> @@ -2092,7 +2092,7 @@ static ssize_t inode_readahead_blks_store(struct ext4_attr *a,
> return -EINVAL;
>
> /* inode_readahead_blks must be a power of 2 */
> - if (t & (t-1))
> + if (!is_power_of_2(t))
> return -EINVAL;
>
> sbi->s_inode_readahead_blks = t;
>
On Fri, Apr 24, 2009 at 10:03:31AM -0500, Eric Sandeen wrote:
> > @@ -2092,7 +2092,7 @@ static ssize_t inode_readahead_blks_store(struct ext4_attr *a,
> > return -EINVAL;
> >
> > /* inode_readahead_blks must be a power of 2 */
> > - if (t & (t-1))
> > + if (!is_power_of_2(t))
> > return -EINVAL;
Might as well remove the comment; it's not needed if we're going to be
using is_power_of_2().
- Ted
Signed-off-by: Robert P. J. Day <[email protected]>
Signed-off-by: "Theodore Ts'o" <[email protected]>
---
fs/ext4/super.c | 5 ++---
1 files changed, 2 insertions(+), 3 deletions(-)
diff --git a/fs/ext4/super.c b/fs/ext4/super.c
index f19d8b8..e20ff9c 100644
--- a/fs/ext4/super.c
+++ b/fs/ext4/super.c
@@ -1482,7 +1482,7 @@ set_qf_format:
return 0;
if (option < 0 || option > (1 << 30))
return 0;
- if (option & (option - 1)) {
+ if (!is_power_of_2(option)) {
printk(KERN_ERR "EXT4-fs: inode_readahead_blks"
" must be a power of 2\n");
return 0;
@@ -2100,8 +2100,7 @@ static ssize_t inode_readahead_blks_store(struct ext4_attr *a,
if (parse_strtoul(buf, 0x40000000, &t))
return -EINVAL;
- /* inode_readahead_blks must be a power of 2 */
- if (t & (t-1))
+ if (!is_power_of_2(t))
return -EINVAL;
sbi->s_inode_readahead_blks = t;
--
1.5.6.3