All of lore.kernel.org
 help / color / mirror / Atom feed
From: Luis Chamberlain <mcgrof@kernel.org>
To: "Darrick J. Wong" <djwong@kernel.org>, fdmanana@gmail.com
Cc: fstests@vger.kernel.org, Anthony Iliopoulos <ailiopoulos@suse.de>,
	mcgrof@kernel.org
Subject: Re: [PATCH] fsstress: improve error message on check_cwd() error
Date: Wed, 3 Nov 2021 11:18:22 -0700	[thread overview]
Message-ID: <YYLSbnyxTTzLlGM/@bombadil.infradead.org> (raw)
In-Reply-To: <20211103162434.GX24282@magnolia>

On Wed, Nov 03, 2021 at 09:24:34AM -0700, Darrick J. Wong wrote:
> On Mon, Nov 01, 2021 at 08:55:59AM -0700, Luis Chamberlain wrote:
> > I ran into an error with generic/083 with xfs due to check_cwd() but
> > why it failed is not clear because there are two types of
> > failures:
> > 
> >   o stat64() failed (likely -ENOMEM is my guess)
> >   o the inode actually changed
> > 
> > Throw a bone out to developers so that in case en error does happen
> > they know which rabbit hole to go down on.
> 
> <cough> word choice on those last three words...

Will fix thanks.

> > 
> > Cc: Anthony Iliopoulos <ailiopoulos@suse.de>
> > Signed-off-by: Luis Chamberlain <mcgrof@kernel.org>
> > ---
> >  ltp/fsstress.c | 15 ++++++++++++++-
> >  1 file changed, 14 insertions(+), 1 deletion(-)
> > 
> > diff --git a/ltp/fsstress.c b/ltp/fsstress.c
> > index 90ae432e..a576afea 100644
> > --- a/ltp/fsstress.c
> > +++ b/ltp/fsstress.c
> > @@ -9,6 +9,7 @@
> >  #include <sys/uio.h>
> >  #include <stddef.h>
> >  #include <stdbool.h>
> > +#include <string.h>
> >  #include "global.h"
> >  
> >  #ifdef HAVE_BTRFSUTIL_H
> > @@ -943,9 +944,21 @@ check_cwd(void)
> >  {
> >  #ifdef DEBUG
> >  	struct stat64	statbuf;
> > +	int ret;
> > +
> > +	ret = stat64(".", &statbuf);
> > +	if (ret !=0) {
> 
> Nit: space between '!=' and '0'.

OK.

> > +		fprintf(stderr, "fsstress: check_cwd stat64 failed with: %d (%s)\n",
> > +			ret, strerror(ret));
> 
> ret is set to -1 on error, according to the manpage; to get the real
> error you'd have to call strerror(errno) as the last arg, or be lazy
> and:

I don't want to be lazy here as this is a real issue.

> 		perror("fsstress check_cwd stat64");
> 
> > +		goto out;
> > +	}
> >  
> > -	if (stat64(".", &statbuf) == 0 && statbuf.st_ino == top_ino)
> > +	if (statbuf.st_ino == top_ino)
> >  		return;
> > +
> > +	fprintf(stderr, "fsstress: check_cwd statbuf.st_ino (%lu) != top_ino (%lu)\n",
> > +		statbuf.st_ino, top_ino);
> 
> This might want some explicit casting, since this can be defined as
> anything between unsigned long to uint64_t, at least according to the
> glibc headers on my system.

Um, Filipe had suggested something a bit different before. Can you guys
decide and let me know your final preference ? :)

  Luis

  reply	other threads:[~2021-11-03 18:18 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-11-01 15:55 [PATCH] fsstress: improve error message on check_cwd() error Luis Chamberlain
2021-11-03 16:24 ` Darrick J. Wong
2021-11-03 18:18   ` Luis Chamberlain [this message]
2021-11-05 16:04     ` Luis Chamberlain
2021-11-05 16:09       ` Darrick J. Wong
  -- strict thread matches above, loose matches on Subject: below --
2021-09-21 17:50 Luis Chamberlain
2021-09-22 10:15 ` Filipe Manana
2021-09-22 20:07   ` Luis Chamberlain
2021-09-23 12:37     ` Filipe Manana
2021-11-01 15:50       ` Luis Chamberlain

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=YYLSbnyxTTzLlGM/@bombadil.infradead.org \
    --to=mcgrof@kernel.org \
    --cc=ailiopoulos@suse.de \
    --cc=djwong@kernel.org \
    --cc=fdmanana@gmail.com \
    --cc=fstests@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.