On Wed, Aug 21 2013 at 10:40pm -0400, Joe Jin <joe.jin@xxxxxxxxxx> wrote: > On 08/21/13 23:06, Mike Snitzer wrote: > > On Wed, Aug 21 2013 at 10:48am -0400, > > Mikulas Patocka <mpatocka@xxxxxxxxxx> 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. -- dm-devel mailing list dm-devel@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/dm-devel