[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20160811145859.GA4294@pc>
Date: Thu, 11 Aug 2016 15:58:59 +0100
From: Salah Triki <salah.triki@...il.com>
To: Luis de Bethencourt <luisbg@....samsung.com>
Cc: linux-kernel@...r.kernel.org, akpm@...ux-foundation.org,
viro@...iv.linux.org.uk, salah.triki@....org
Subject: Re: [PATCH 2/4] befs: add check for ag_shift in superblock
On Tue, Aug 09, 2016 at 11:01:24PM +0100, Luis de Bethencourt wrote:
> ag_shift and blocks_per_ag contain the same information in different ways,
> same as block_shift and block_size do. It is worth checking this two are
> consistent, but since blocks_per_ag isn't documented as mandatory to use
> some implementations of befs don't enforce this, so making it non-fatal if
> they don't match and just having it as a warning.
>
> Signed-off-by: Luis de Bethencourt <luisbg@....samsung.com>
> ---
> fs/befs/super.c | 7 +++++++
> 1 file changed, 7 insertions(+)
>
> diff --git a/fs/befs/super.c b/fs/befs/super.c
> index dc13df8..c36745d 100644
> --- a/fs/befs/super.c
> +++ b/fs/befs/super.c
> @@ -103,6 +103,13 @@ befs_check_sb(struct super_block *sb)
> return BEFS_ERR;
> }
>
> +
> + /* ag_shift also encodes the same information as blocks_per_ag in a
> + * different way, non-fatal consistency check
> + */
> + if ((1 << befs_sb->ag_shift) != befs_sb->blocks_per_ag)
> + befs_error(sb, "ag_shift disagrees with blocks_per_ag.");
> +
> if (befs_sb->log_start != befs_sb->log_end || befs_sb->flags == BEFS_DIRTY) {
> befs_error(sb, "Filesystem not clean! There are blocks in the "
> "journal. You must boot into BeOS and mount this volume "
> --
> 2.5.1
>
Signed-off-by: Salah Triki <salah.triki@...il.com>
Thanx :)
Salah
Powered by blists - more mailing lists