From: Mike Snitzer <snitzer@redhat.com>
To: Joe Jin <joe.jin@oracle.com>
Cc: Mikulas Patocka <mpatocka@redhat.com>,
dm-devel@redhat.com, agk@redhat.com,
linux-kernel@vger.kernel.org
Subject: Re: [PATCH v2] dm ioctl: allow change device target type to error
Date: Thu, 22 Aug 2013 16:10:53 -0400 [thread overview]
Message-ID: <20130822201052.GA22556@redhat.com> (raw)
In-Reply-To: <52157A08.7080701@oracle.com>
On Wed, Aug 21 2013 at 10:40pm -0400,
Joe Jin <joe.jin@oracle.com> wrote:
> On 08/21/13 23:06, Mike Snitzer wrote:
> > On Wed, Aug 21 2013 at 10:48am -0400,
> > Mikulas Patocka <mpatocka@redhat.com> wrote:
> >
> >>
> >>
> >> On Wed, 21 Aug 2013, Joe Jin wrote:
> >>
> >>> commit a5664da "dm ioctl: make bio or request based device type immutable"
> >>> prevented "dmsetup wape_table" change the target type to "error".
> >>
> >> That commit a5664da is there for a reason (it is not possible to change
> >> bio-based device to request-based and vice versa) and I don't really see
> >> how this patch is supposed to work.
> >>
> >> If there are bios that are in flight and that already passed through
> >> blk_queue_bio, and you change the device from request-based to bio-based,
> >> what are you going to do with them? - The patch doesn't do anything about
> >> it.
> >>
> >> A better approach would be to create a new request-based target "error-rq"
> >> and change the multipath target to "error-rq" target. That way, you don't
> >> have to change device type from request based to bio based.
> >
> > My thoughts _exactly_. This patch is very confused.
> >
> > Joe, what are you looking to be able to do? Switch a dm-multipath
> > device to error? Or allowing switching a target that has
> > DM_TARGET_IMMUTABLE flag set to be switched to error target?
> >
> > The latter restriction was introduced with commit 36a0456fb ("dm table:
> > add immutable feature").
>
> Hi Mike,
>
> So far dmsetup support wipe_table:
> https://bugzilla.redhat.com/show_bug.cgi?id=742607
> As description in the bug Doc Text, "This could be useful, for example,
> if a long-running process keeps a device open after it has finished using
> it and you need to release the underlying devices before that process exits."
>
> After apply the commit, wipe_table no long works.
Well, it never _really_ worked even before that commit because it was
switching from request-based to bio-based. Some queued requests
could've easily slipped through the cracks.
But I now understand what it is you want to be able to do.
next prev parent reply other threads:[~2013-08-22 20:10 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-08-21 14:18 [PATCH v2] dm ioctl: allow change device target type to error Joe Jin
2013-08-21 14:48 ` [dm-devel] " Mikulas Patocka
2013-08-21 15:06 ` Mike Snitzer
2013-08-22 2:40 ` Joe Jin
2013-08-22 20:10 ` Mike Snitzer [this message]
2013-08-22 2:50 ` [dm-devel] " Joe Jin
2013-08-22 20:19 ` Mike Snitzer
2013-08-23 0:17 ` [PATCH] dm: allow error target to replace either bio-based and request-based targets Mike Snitzer
2013-08-23 1:06 ` Joe Jin
2013-08-23 3:14 ` Jun'ichi Nomura
2013-08-23 3:14 ` [dm-devel] " Jun'ichi Nomura
2013-08-23 10:01 ` 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=20130822201052.GA22556@redhat.com \
--to=snitzer@redhat.com \
--cc=agk@redhat.com \
--cc=dm-devel@redhat.com \
--cc=joe.jin@oracle.com \
--cc=linux-kernel@vger.kernel.org \
--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.