All of lore.kernel.org
 help / color / mirror / Atom feed
From: James Bottomley <James.Bottomley@HansenPartnership.com>
To: Christoph Hellwig <hch@lst.de>
Cc: Tejun Heo <tj@kernel.org>, Paul Mackerras <paulus@ozlabs.org>,
	linux-scsi@vger.kernel.org
Subject: Re: Bugs in multipath scsi in 4.3-rc2
Date: Fri, 02 Oct 2015 06:25:01 -0700	[thread overview]
Message-ID: <1443792301.2209.4.camel@HansenPartnership.com> (raw)
In-Reply-To: <20151002125608.GB14899@lst.de>

On Fri, 2015-10-02 at 14:56 +0200, Christoph Hellwig wrote:
> On Wed, Sep 30, 2015 at 03:34:54PM -0700, James Bottomley wrote:
> > Perhaps we don't have to be that draconian.  There's no real reason we
> > can't autoload asynchronously.  If the module isn't ready by the time we
> > come to check the attachment, then it will attach to the device later
> > when the module init routine runs.
> 
> I don't think this works.  We're attaching just after the request_module
> call, so modprobe doesn't really have a chance to finish before we
> return.

Yes, I suspect it will mostly happen in the alua attach, except for
large LUN sets.

> > Should we do anything to limit the module_request floods?  This will
> > likely happen for every LUN of an ALUA system ... there can be hundreds
> > of those.
> 
> Once the alua module is loaded there won't be any request_module calls.
> If you build with device handler support but without ALUA support
> you'll get a lot of calls, but that's not any different than probing
> for other optional features.

That doesn't matter: if you modprobe alua after all devices are
discovered, it will attach correctly to all potential devices from the
alua module_init.  This means the effect is the same whether the
request_module is sync or async ... the object is to get the device
attached to alua if it is an alua device.

The only drawback of an async request_module is that we get a flood of
request_modules()s from every LUN on an array until alua is loaded.

> Personally I think we probably should simple build ALUA support into
> scsi_mod if SCSI_DH is selected, as that's part of the standard and
> supported by any modern multi pathing device.

I suppose; the code size is roughly the same as scsi_dh.o which we just
made non modular.

James




  reply	other threads:[~2015-10-02 13:25 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-09-25 12:16 Bugs in multipath scsi in 4.3-rc2 Paul Mackerras
2015-09-25 15:18 ` Christoph Hellwig
2015-09-25 17:31   ` James Bottomley
2015-09-30 15:14     ` Christoph Hellwig
2015-09-30 21:53       ` Tejun Heo
2015-09-30 22:34         ` James Bottomley
2015-10-02 12:56           ` Christoph Hellwig
2015-10-02 13:25             ` James Bottomley [this message]
2015-10-02 13:34               ` Christoph Hellwig
2015-10-02 13:44                 ` James Bottomley
2015-10-04  7:45                   ` Christoph Hellwig
2015-10-12 12:45                     ` Hannes Reinecke
2015-10-12 14:39                       ` Christoph Hellwig
2015-10-12 19:29                         ` Mike Snitzer
2015-10-12 19:36                           ` Christoph Hellwig
2015-10-13  6:00                             ` Hannes Reinecke
2015-10-13 11:52                               ` Christoph Hellwig
2015-10-12 14:51                       ` James Bottomley
2015-10-01  4:34       ` Paul Mackerras
2015-10-02 12:52         ` Christoph Hellwig
2015-10-08  4:59           ` Paul Mackerras
2015-09-25 16:28 ` Bart Van Assche

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=1443792301.2209.4.camel@HansenPartnership.com \
    --to=james.bottomley@hansenpartnership.com \
    --cc=hch@lst.de \
    --cc=linux-scsi@vger.kernel.org \
    --cc=paulus@ozlabs.org \
    --cc=tj@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.