On Tue, Apr 25, 2017 at 03:38:38PM +0200, Xose Vazquez Perez wrote: > On 03/12/2009 07:38 PM, Benjamin Marzinski wrote: > ^^^^ Old patch. > > > Even when the last path of a multipath device is deleted, it can't be > > removed until all the queued IO is flushed. For devices that have > > no_path_retry set to queue, this doesn't automatically happen. > > > > This patch adds a "flush_on_last_del" config file option, that causes the > > multipath device to automatically turn off queueing when the last path is > > deleted. It also adds the "disablequeueing" and "restorequeueing" > > multipathd cli commands. > > > > Signed-off-by: Benjamin Marzinski <bmarzins@xxxxxxxxxx> > > [...] > > diff --git a/libmultipath/propsel.c b/libmultipath/propsel.c > > index 43611ff..c1bc591 100644 > > --- a/libmultipath/propsel.c > > +++ b/libmultipath/propsel.c > > @@ -279,6 +279,10 @@ select_prio (struct path * pp) > > extern int > > select_no_path_retry(struct multipath *mp) > > { > > + if (mp->flush_on_last_del == FLUSH_IN_PROGRESS) { > > + condlog(0, "flush_on_last_del in progress"); > ^^^^ > If flush is done per LUN, it should be added a prefix(WWID or alias). Yep. I can send a patch for this. Thanks. -Ben > > > + mp->no_path_retry = NO_PATH_RETRY_FAIL; > > + } > > if (mp->mpe && mp->mpe->no_path_retry != NO_PATH_RETRY_UNDEF) { > > mp->no_path_retry = mp->mpe->no_path_retry; > > condlog(3, "%s: no_path_retry = %i (multipath setting)", > > @@ -368,3 +372,31 @@ select_pg_timeout(struct multipath *mp) > > condlog(3, "pg_timeout = NONE (internal default)"); > > return 0; > > } > Thank you. -- dm-devel mailing list dm-devel@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/dm-devel