Patchwork [11/37] e2fsck: fix the extended attribute checksum error message

login
register
mail settings
Submitter Darrick J. Wong
Date May 1, 2014, 11:13 p.m.
Message ID <20140501231334.31890.49878.stgit@birch.djwong.org>
Download mbox | patch
Permalink /patch/344841/
State Superseded
Headers show

Comments

Darrick J. Wong - May 1, 2014, 11:13 p.m.
Make the "EA block passes checks but fails checksum" message less
strange.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
---
 e2fsck/problem.c |   12 +++++-------
 1 file changed, 5 insertions(+), 7 deletions(-)



--
To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Lukas Czerner - May 2, 2014, 12:46 p.m.
On Thu, 1 May 2014, Darrick J. Wong wrote:

> Date: Thu, 01 May 2014 16:13:34 -0700
> From: Darrick J. Wong <darrick.wong@oracle.com>
> To: tytso@mit.edu, darrick.wong@oracle.com
> Cc: linux-ext4@vger.kernel.org
> Subject: [PATCH 11/37] e2fsck: fix the extended attribute checksum error
>     message
> 
> Make the "EA block passes checks but fails checksum" message less
> strange.
> 
> Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
> ---
>  e2fsck/problem.c |   12 +++++-------
>  1 file changed, 5 insertions(+), 7 deletions(-)
> 
> 
> diff --git a/e2fsck/problem.c b/e2fsck/problem.c
> index 0999399..ec20bd1 100644
> --- a/e2fsck/problem.c
> +++ b/e2fsck/problem.c
> @@ -992,19 +992,17 @@ static struct e2fsck_problem problem_table[] = {
>  	     "extent\n\t(logical @b %c, @n physical @b %b, len %N)\n"),
>  	  PROMPT_FIX, 0 },
>  
> -	/* Extended attribute block checksum for inode does not match. */
> +	/* Extended attribute block checksum does not match. */

The "for inode" is still there in the message, so I do not think
there is a reason to remove it from the comment.

>  	{ PR_1_EA_BLOCK_CSUM_INVALID,
> -	  N_("Extended attribute @a @b %b checksum for @i %i does not "
> -	     "match.  "),
> +	  N_("@a @b %b checksum for @i %i does not match.  "),
>  	  PROMPT_CLEAR, PR_INITIAL_CSUM },
>  
>  	/*
> -	 * Extended attribute block passes checks, but checksum for inode does
> -	 * not match.
> +	 * Extended attribute block passes checks, but checksum does not
> +	 * match.
>  	 */
>  	{ PR_1_EA_BLOCK_ONLY_CSUM_INVALID,
> -	  N_("Extended attribute @a @b %b passes checks, but checksum for "
> -	     "@i %i does not match.  "),
> +	  N_("@a @b %b passes checks, but checksum does not match.  "),

Is there a reason to remove the inode number from the message ?

Thanks!
-Lukas

>  	  PROMPT_FIX, 0 },
>  
>  	/*
> 
> --
> To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> 
--
To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Darrick J. Wong - May 5, 2014, 11:08 p.m.
On Fri, May 02, 2014 at 02:46:56PM +0200, Lukáš Czerner wrote:
> On Thu, 1 May 2014, Darrick J. Wong wrote:
> 
> > Date: Thu, 01 May 2014 16:13:34 -0700
> > From: Darrick J. Wong <darrick.wong@oracle.com>
> > To: tytso@mit.edu, darrick.wong@oracle.com
> > Cc: linux-ext4@vger.kernel.org
> > Subject: [PATCH 11/37] e2fsck: fix the extended attribute checksum error
> >     message
> > 
> > Make the "EA block passes checks but fails checksum" message less
> > strange.
> > 
> > Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
> > ---
> >  e2fsck/problem.c |   12 +++++-------
> >  1 file changed, 5 insertions(+), 7 deletions(-)
> > 
> > 
> > diff --git a/e2fsck/problem.c b/e2fsck/problem.c
> > index 0999399..ec20bd1 100644
> > --- a/e2fsck/problem.c
> > +++ b/e2fsck/problem.c
> > @@ -992,19 +992,17 @@ static struct e2fsck_problem problem_table[] = {
> >  	     "extent\n\t(logical @b %c, @n physical @b %b, len %N)\n"),
> >  	  PROMPT_FIX, 0 },
> >  
> > -	/* Extended attribute block checksum for inode does not match. */
> > +	/* Extended attribute block checksum does not match. */
> 
> The "for inode" is still there in the message, so I do not think
> there is a reason to remove it from the comment.

Oops.

> >  	{ PR_1_EA_BLOCK_CSUM_INVALID,
> > -	  N_("Extended attribute @a @b %b checksum for @i %i does not "
> > -	     "match.  "),
> > +	  N_("@a @b %b checksum for @i %i does not match.  "),
> >  	  PROMPT_CLEAR, PR_INITIAL_CSUM },
> >  
> >  	/*
> > -	 * Extended attribute block passes checks, but checksum for inode does
> > -	 * not match.
> > +	 * Extended attribute block passes checks, but checksum does not
> > +	 * match.
> >  	 */
> >  	{ PR_1_EA_BLOCK_ONLY_CSUM_INVALID,
> > -	  N_("Extended attribute @a @b %b passes checks, but checksum for "
> > -	     "@i %i does not match.  "),
> > +	  N_("@a @b %b passes checks, but checksum does not match.  "),
> 
> Is there a reason to remove the inode number from the message ?

For whatever reason, I was confused by this message and thought it was
referring to a checksum failure in the inode itself.  On the other hand, it's
helpful to map an EA block back to an inode, so perhaps the message should be
changed to:

"Inode XXX's extended attribute block YYY passes checks, but checksum does not
match."

Now that I look at the other metadata_csum checks, the failure message starts
with "@i %i..." so these two might as well follow the convention.  Sorry that I
seem to have strayed from it.

--D
> 
> Thanks!
> -Lukas
> 
> >  	  PROMPT_FIX, 0 },
> >  
> >  	/*
> > 
> > --
> > To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
> > the body of a message to majordomo@vger.kernel.org
> > More majordomo info at  http://vger.kernel.org/majordomo-info.html
> > 
> --
> To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Lukas Czerner - May 6, 2014, 10:12 a.m.
On Mon, 5 May 2014, Darrick J. Wong wrote:

> Date: Mon, 5 May 2014 16:08:29 -0700
> From: Darrick J. Wong <darrick.wong@oracle.com>
> To: Lukáš Czerner <lczerner@redhat.com>
> Cc: tytso@mit.edu, linux-ext4@vger.kernel.org
> Subject: Re: [PATCH 11/37] e2fsck: fix the extended attribute checksum error
>     message
> 
> On Fri, May 02, 2014 at 02:46:56PM +0200, Lukáš Czerner wrote:
> > On Thu, 1 May 2014, Darrick J. Wong wrote:
> > 
> > > Date: Thu, 01 May 2014 16:13:34 -0700
> > > From: Darrick J. Wong <darrick.wong@oracle.com>
> > > To: tytso@mit.edu, darrick.wong@oracle.com
> > > Cc: linux-ext4@vger.kernel.org
> > > Subject: [PATCH 11/37] e2fsck: fix the extended attribute checksum error
> > >     message
> > > 
> > > Make the "EA block passes checks but fails checksum" message less
> > > strange.
> > > 
> > > Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
> > > ---
> > >  e2fsck/problem.c |   12 +++++-------
> > >  1 file changed, 5 insertions(+), 7 deletions(-)
> > > 
> > > 
> > > diff --git a/e2fsck/problem.c b/e2fsck/problem.c
> > > index 0999399..ec20bd1 100644
> > > --- a/e2fsck/problem.c
> > > +++ b/e2fsck/problem.c
> > > @@ -992,19 +992,17 @@ static struct e2fsck_problem problem_table[] = {
> > >  	     "extent\n\t(logical @b %c, @n physical @b %b, len %N)\n"),
> > >  	  PROMPT_FIX, 0 },
> > >  
> > > -	/* Extended attribute block checksum for inode does not match. */
> > > +	/* Extended attribute block checksum does not match. */
> > 
> > The "for inode" is still there in the message, so I do not think
> > there is a reason to remove it from the comment.
> 
> Oops.
> 
> > >  	{ PR_1_EA_BLOCK_CSUM_INVALID,
> > > -	  N_("Extended attribute @a @b %b checksum for @i %i does not "
> > > -	     "match.  "),
> > > +	  N_("@a @b %b checksum for @i %i does not match.  "),
> > >  	  PROMPT_CLEAR, PR_INITIAL_CSUM },
> > >  
> > >  	/*
> > > -	 * Extended attribute block passes checks, but checksum for inode does
> > > -	 * not match.
> > > +	 * Extended attribute block passes checks, but checksum does not
> > > +	 * match.
> > >  	 */
> > >  	{ PR_1_EA_BLOCK_ONLY_CSUM_INVALID,
> > > -	  N_("Extended attribute @a @b %b passes checks, but checksum for "
> > > -	     "@i %i does not match.  "),
> > > +	  N_("@a @b %b passes checks, but checksum does not match.  "),
> > 
> > Is there a reason to remove the inode number from the message ?
> 
> For whatever reason, I was confused by this message and thought it was
> referring to a checksum failure in the inode itself.  On the other hand, it's
> helpful to map an EA block back to an inode, so perhaps the message should be
> changed to:
> 
> "Inode XXX's extended attribute block YYY passes checks, but checksum does not
> match."

That sounds better, thanks!
-Lukas

> 
> Now that I look at the other metadata_csum checks, the failure message starts
> with "@i %i..." so these two might as well follow the convention.  Sorry that I
> seem to have strayed from it.
> 
> --D
> > 
> > Thanks!
> > -Lukas
> > 
> > >  	  PROMPT_FIX, 0 },
> > >  
> > >  	/*
> > > 
> > > --
> > > To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
> > > the body of a message to majordomo@vger.kernel.org
> > > More majordomo info at  http://vger.kernel.org/majordomo-info.html
> > > 
> > --
> > To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
> > the body of a message to majordomo@vger.kernel.org
> > More majordomo info at  http://vger.kernel.org/majordomo-info.html
>

Patch

diff --git a/e2fsck/problem.c b/e2fsck/problem.c
index 0999399..ec20bd1 100644
--- a/e2fsck/problem.c
+++ b/e2fsck/problem.c
@@ -992,19 +992,17 @@  static struct e2fsck_problem problem_table[] = {
 	     "extent\n\t(logical @b %c, @n physical @b %b, len %N)\n"),
 	  PROMPT_FIX, 0 },
 
-	/* Extended attribute block checksum for inode does not match. */
+	/* Extended attribute block checksum does not match. */
 	{ PR_1_EA_BLOCK_CSUM_INVALID,
-	  N_("Extended attribute @a @b %b checksum for @i %i does not "
-	     "match.  "),
+	  N_("@a @b %b checksum for @i %i does not match.  "),
 	  PROMPT_CLEAR, PR_INITIAL_CSUM },
 
 	/*
-	 * Extended attribute block passes checks, but checksum for inode does
-	 * not match.
+	 * Extended attribute block passes checks, but checksum does not
+	 * match.
 	 */
 	{ PR_1_EA_BLOCK_ONLY_CSUM_INVALID,
-	  N_("Extended attribute @a @b %b passes checks, but checksum for "
-	     "@i %i does not match.  "),
+	  N_("@a @b %b passes checks, but checksum does not match.  "),
 	  PROMPT_FIX, 0 },
 
 	/*