2012-02-23 19:09:40

by santosh nayak

[permalink] [raw]
Subject: [PATCH] ext4: MMP: Fix endianness bug.

From: Santosh Nayak <[email protected]>

Sparse complaint this endian bug in ext4: mmp.

Signed-off-by: Santosh Nayak <[email protected]>
---
fs/ext4/mmp.c | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/fs/ext4/mmp.c b/fs/ext4/mmp.c
index 7ea4ba4..ed6548d 100644
--- a/fs/ext4/mmp.c
+++ b/fs/ext4/mmp.c
@@ -257,8 +257,8 @@ int ext4_multi_mount_protect(struct super_block *sb,
* If check_interval in MMP block is larger, use that instead of
* update_interval from the superblock.
*/
- if (mmp->mmp_check_interval > mmp_check_interval)
- mmp_check_interval = mmp->mmp_check_interval;
+ if (le16_to_cpu(mmp->mmp_check_interval) > mmp_check_interval)
+ mmp_check_interval = le16_to_cpu(mmp->mmp_check_interval);

seq = le32_to_cpu(mmp->mmp_seq);
if (seq == EXT4_MMP_SEQ_CLEAN)
--
1.7.4.4


2012-02-23 21:49:42

by Johann Lombardi

[permalink] [raw]
Subject: Re: [PATCH] ext4: MMP: Fix endianness bug.

On Fri, Feb 24, 2012 at 12:39:05AM +0530, [email protected] wrote:
> @@ -257,8 +257,8 @@ int ext4_multi_mount_protect(struct super_block *sb,
> * If check_interval in MMP block is larger, use that instead of
> * update_interval from the superblock.
> */
> - if (mmp->mmp_check_interval > mmp_check_interval)
> - mmp_check_interval = mmp->mmp_check_interval;
> + if (le16_to_cpu(mmp->mmp_check_interval) > mmp_check_interval)
> + mmp_check_interval = le16_to_cpu(mmp->mmp_check_interval);

Looks good to me.
Reviewed-by: Johann Lombardi <[email protected]>

Johann

2012-02-24 17:10:27

by Andreas Dilger

[permalink] [raw]
Subject: Re: [PATCH] ext4: MMP: Fix endianness bug.

On 2012-02-23, at 12:09, [email protected] wrote:

> From: Santosh Nayak <[email protected]>
>
> Sparse complaint this endian bug in ext4: mmp.
>
> Signed-off-by: Santosh Nayak <[email protected]>

Looks good.

Reviewed-by: Andreas Dilger <[email protected]>

> ---
> fs/ext4/mmp.c | 4 ++--
> 1 files changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/fs/ext4/mmp.c b/fs/ext4/mmp.c
> index 7ea4ba4..ed6548d 100644
> --- a/fs/ext4/mmp.c
> +++ b/fs/ext4/mmp.c
> @@ -257,8 +257,8 @@ int ext4_multi_mount_protect(struct super_block *sb,
> * If check_interval in MMP block is larger, use that instead of
> * update_interval from the superblock.
> */
> - if (mmp->mmp_check_interval > mmp_check_interval)
> - mmp_check_interval = mmp->mmp_check_interval;
> + if (le16_to_cpu(mmp->mmp_check_interval) > mmp_check_interval)
> + mmp_check_interval = le16_to_cpu(mmp->mmp_check_interval);
>
> seq = le32_to_cpu(mmp->mmp_seq);
> if (seq == EXT4_MMP_SEQ_CLEAN)
> --
> 1.7.4.4
>

2012-02-27 06:11:24

by Theodore Ts'o

[permalink] [raw]
Subject: Re: [PATCH] ext4: MMP: Fix endianness bug.

On Fri, Feb 24, 2012 at 12:39:05AM +0530, [email protected] wrote:
> From: Santosh Nayak <[email protected]>
>
> Sparse complaint this endian bug in ext4: mmp.
>
> Signed-off-by: Santosh Nayak <[email protected]>

Thanks, applied.

- Ted