From: Mike Snitzer <snitzer@redhat.com>
To: Mikulas Patocka <mpatocka@redhat.com>
Cc: dm-devel@redhat.com
Subject: Re: dm-mpath: do not change SCSI device handler
Date: Thu, 4 Apr 2013 09:16:31 -0400 [thread overview]
Message-ID: <20130404131631.GA10208@redhat.com> (raw)
In-Reply-To: <Pine.LNX.4.64.1304040847580.13053@file.rdu.redhat.com>
On Thu, Apr 04 2013 at 8:55am -0400,
Mikulas Patocka <mpatocka@redhat.com> wrote:
>
>
> On Thu, 4 Apr 2013, Mike Snitzer wrote:
>
> > I'll take a look at fixing this by deferring the scsi_dh switch until
> > resume. This fix would assume multipath-tools is _not_ doing a noflush
> > suspend/resume when it is switching the scsi_dh.
> >
> > Mike
>
> This won't work because scsi_dh_attach allocates memory and you can't
> allocate memory when something is suspended.
Ah yeah, scsi_dh->attach allocates memory for scsi_dh_data. But
couldn't those scsi_dh_* attach allocations be switched from GFP_KERNEL
to GFP_NOIO?
> If we want to make it possible to change device handler, we need to add a
> counter to "struct scsi_dh_data", increment the counter when the device
> handler issues some request, decrement the counter when it finishes the
> request (it may be tricky because you can't decrement it from the device
> handler module because the module may be unloaded as soon as you decrement
> it). Then, you wait until the counter is zero and detach the handler.
Noted, but I haven't given up hope on just deferring the scsi_dh switch
quite yet.
Mike
next prev parent reply other threads:[~2013-04-04 13:16 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-04-03 0:04 [PATCH] dm-mpath: do not change SCSI device handler Mikulas Patocka
2013-04-03 13:32 ` Mike Snitzer
2013-04-03 20:54 ` Mikulas Patocka
2013-04-04 6:47 ` [PATCH] " Hannes Reinecke
2013-04-04 12:24 ` Mike Snitzer
2013-04-04 12:55 ` Mikulas Patocka
2013-04-04 13:16 ` Mike Snitzer [this message]
2013-04-04 13:36 ` Mikulas Patocka
2013-04-04 14:20 ` Mike Snitzer
2013-04-04 15:13 ` Mikulas Patocka
2013-04-04 15:38 ` Mikulas Patocka
2013-04-08 21:50 ` [PATCH 1/2] [SCSI] scsi_dh: add scsi_dh_alloc_data Mike Snitzer
2013-04-08 21:50 ` [PATCH 2/2] dm mpath: attach scsi_dh during table resume Mike Snitzer
2013-04-22 22:33 ` Mike Snitzer
2013-04-25 13:48 ` Mikulas Patocka
2013-04-25 14:17 ` Mike Snitzer
2013-04-25 14:50 ` Mikulas Patocka
2013-04-25 15:27 ` Bryn M. Reeves
2013-04-25 15:37 ` Mike Snitzer
2013-04-25 15:44 ` Bryn M. Reeves
2013-04-25 15:31 ` Mike Snitzer
2013-04-26 6:05 ` Hannes Reinecke
2013-04-26 13:29 ` Mike Snitzer
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=20130404131631.GA10208@redhat.com \
--to=snitzer@redhat.com \
--cc=dm-devel@redhat.com \
--cc=mpatocka@redhat.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 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.