All of lore.kernel.org
 help / color / mirror / Atom feed
From: Chandra Seetharaman <sekharan@us.ibm.com>
To: Christophe Varoqui <christophe.varoqui@free.fr>
Cc: jens.axboe@oracle.com, james.bottomley@hansenpartnership.com,
	agk@redhat.com, linux-scsi@vger.kernel.org, dm-devel@redhat.com
Subject: Re: [BUG] dm-mpath and scsi persistent reservation
Date: Wed, 22 Oct 2008 14:21:57 -0700	[thread overview]
Message-ID: <1224710517.14830.852.camel@chandra-ubuntu> (raw)
In-Reply-To: <20081022215402.214a4ef8@plop>


On Wed, 2008-10-22 at 21:54 +0200, Christophe Varoqui wrote:
> It seems to me the device handler infrastructure proposes to translate
> scsi error codes from requests generated by the device handler itself. I

No, the handler doesn't generate the requests.

Device handler's check_sense() function is called from the
scsi_error.c:scsi_check_sense() function whenever a sense code is
returned from the device (on normal I/Os).

When in the sense function, the device handler can do any action (like
closing the other path(s)) and returning an appropriate error code (such
that dm doesn't retry the I/O on other paths).

> don't know how we can detect a reservation conflict from a device
> handler without submitting a dangerous write io.
> 
> I don't see how we could use a device handler to translate an scsi error
> code from a write io submitted to the multipath device map. Do you ?

That is what it actually does, it intercepts the sense code returned
from the device on normal I/Os.

> 
> Regards,
> cvaroqui
> > 
> > The SCSI Hardware handler is created for devices with special needs.
> > It is available in 2.6.27. One can be written for any device to
> > translate the scsi sense code to a different error code that the dm
> > understands. Is this something that coule help this situation ?
> > 
> > Have a look at drivers/scsi/device_handler directory.
> > 
> > Hope this helps,
> > 
> > chandra
> > On Tue, 2008-10-21 at 23:19 +0200, Christophe Varoqui wrote:
> > > Hi,
> > > 
> > > the dm-mpath multipathing driver enqueues write ios returned by
> > > the scsi layer with a "reservation conflict" error (on assymetric
> > > storage controllers, like Clariion, where queue_if_no_path is
> > > enabled).
> > > 
> > > This is wrong, and a potent data-corrupter : wio sent to a reserved
> > > scsi device should never be retried on this same device.
> > > 
> > > Can someone advise on a viable solution for this problem ? I
> > > understand the Device Mapper being a block remapper, it is not
> > > expected to receive scsi errors directly ... but maybe some kind of
> > > translation might be acceptable. Or is there hope in the
> > > request-based remapper ?
> > > 
> > > Jens, James, Alasdair, ... as maintainers of the involved
> > > subsystems, would you care to give some advise on the issue.
> > > 
> > > 
> --
> To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html


  parent reply	other threads:[~2008-10-22 21:21 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-10-21 21:19 [BUG] dm-mpath and scsi persistent reservation Christophe Varoqui
2008-10-21 22:48 ` Chandra Seetharaman
2008-10-22 19:54   ` Christophe Varoqui
2008-10-22 20:30     ` [dm-devel] " James Bottomley
2008-10-23  2:53       ` Mike Christie
2008-10-22 21:21     ` Chandra Seetharaman [this message]
2008-10-23 19:30       ` Christophe Varoqui
2008-10-23 21:03   ` Christophe Varoqui

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=1224710517.14830.852.camel@chandra-ubuntu \
    --to=sekharan@us.ibm.com \
    --cc=agk@redhat.com \
    --cc=christophe.varoqui@free.fr \
    --cc=dm-devel@redhat.com \
    --cc=james.bottomley@hansenpartnership.com \
    --cc=jens.axboe@oracle.com \
    --cc=linux-scsi@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.