Linux Device Mapper development
 help / color / mirror / Atom feed
From: Mike Snitzer <snitzer@redhat.com>
To: "Martin K. Petersen" <martin.petersen@oracle.com>
Cc: device-mapper development <dm-devel@redhat.com>,
	"Alasdair G. Kergon" <agk@redhat.com>,
	linux-scsi@vger.kernel.org
Subject: Re: dm: Integrity errors should not cause failover
Date: Mon, 23 May 2011 14:17:24 -0400	[thread overview]
Message-ID: <20110523181723.GA18971@redhat.com> (raw)
In-Reply-To: <20110518121156.GB18433@redhat.com>

On Wed, May 18 2011 at  8:11am -0400,
Mike Snitzer <snitzer@redhat.com> wrote:

> On Wed, May 18 2011 at 12:49am -0400,
> Martin K. Petersen <martin.petersen@oracle.com> wrote:
> 
> > 
> > Integrity errors need to be passed to the owner of the integrity
> > metadata for processing. Consequently EILSEQ should be passed up the
> > stack.
> > 
> > Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
> > Acked-by: Mike Snitzer <snitzer@redhat.com>
> > 
> > ---
> > 
> > Ping on this one?
> 
> It has been on my personal queue but I didn't push the issue with
> Alasdair (for 2.6.39).
> 
> At this point seems we should be targetting this fix for 2.6.40 but I'll
> defer to Alasdair on whether he'd like to push to .39 last minute.

Hi Martin,

Alasdair and I just chatted about this patch: it will always pass the
the -EILSEQ up _without_ performing any mpath path failure.

The newfound concern is: is there ever a benefit to failing the path
before returning -EILSEQ?

Or will -EILSEQ always imply there is nothing wrong with the path?
E.g. a transport error cannot cause a CRC error -- the transport
error is always trapped by SCSI and cannot result in continued
processing of an IO (that goes on to have CRC error)?

Thanks,
Mike

> 
> > diff --git a/drivers/md/dm-mpath.c b/drivers/md/dm-mpath.c
> > index a550a05..aa4e570 100644
> > --- a/drivers/md/dm-mpath.c
> > +++ b/drivers/md/dm-mpath.c
> > @@ -1290,7 +1290,7 @@ static int do_end_io(struct multipath *m, struct request *clone,
> >  	if (!error && !clone->errors)
> >  		return 0;	/* I/O complete */
> >  
> > -	if (error == -EOPNOTSUPP || error == -EREMOTEIO)
> > +	if (error == -EOPNOTSUPP || error == -EREMOTEIO || error == -EILSEQ)
> >  		return error;
> >  
> >  	if (mpio->pgpath)
> 
> --
> dm-devel mailing list
> dm-devel@redhat.com
> https://www.redhat.com/mailman/listinfo/dm-devel

  reply	other threads:[~2011-05-23 18:17 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-05-18  4:49 [PATCH] dm: Integrity errors should not cause failover Martin K. Petersen
2011-05-18 12:11 ` Mike Snitzer
2011-05-23 18:17   ` Mike Snitzer [this message]
2011-05-25 15:04     ` Martin K. Petersen
  -- strict thread matches above, loose matches on Subject: below --
2011-03-08  6:54 [PATCH] " Martin K. Petersen
2011-03-08 15:14 ` Mike Snitzer
2011-03-08 15:20   ` James Bottomley
2011-03-08 15:30     ` Mike Snitzer
2011-03-08 15:24   ` Martin K. Petersen

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=20110523181723.GA18971@redhat.com \
    --to=snitzer@redhat.com \
    --cc=agk@redhat.com \
    --cc=dm-devel@redhat.com \
    --cc=linux-scsi@vger.kernel.org \
    --cc=martin.petersen@oracle.com \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox