[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20111107214451.GA14339@redhat.com>
Date: Mon, 7 Nov 2011 16:44:51 -0500
From: Mike Snitzer <snitzer@...hat.com>
To: "Jun'ichi Nomura" <j-nomura@...jp.nec.com>
Cc: Heiko Carstens <heiko.carstens@...ibm.com>,
James Bottomley <James.Bottomley@...senPartnership.com>,
Steffen Maier <maier@...ux.vnet.ibm.com>,
"linux-scsi@...r.kernel.org" <linux-scsi@...r.kernel.org>,
Jens Axboe <axboe@...nel.dk>, Hannes Reinecke <hare@...e.de>,
Linux Kernel <linux-kernel@...r.kernel.org>,
Alan Stern <stern@...land.harvard.edu>,
Thadeu Lima de Souza Cascardo <cascardo@...ux.vnet.ibm.com>,
"Taraka R. Bodireddy" <tarak.reddy@...ibm.com>,
"Seshagiri N. Ippili" <seshagiri.ippili@...ibm.com>,
"Manvanthara B. Puttashankar" <mputtash@...ibm.com>,
Jeff Moyer <jmoyer@...hat.com>,
Shaohua Li <shaohua.li@...el.com>, gmuelas@...ibm.com,
dm-devel@...hat.com
Subject: Re: [GIT PULL] Queue free fix (was Re: [PATCH] block: Free queue
resources at blk_release_queue())
On Mon, Nov 07 2011 at 12:10pm -0500,
Mike Snitzer <snitzer@...hat.com> wrote:
> On Mon, Nov 07 2011 at 10:36am -0500,
> Mike Snitzer <snitzer@...hat.com> wrote:
> > Could be the block layer's onstack plugging changes are at the heart of
> > this.
> >
> > I voiced onstack plugging concerns relative to DM some time ago
> > (https://lkml.org/lkml/2011/3/9/450) but somehow convinced myself DM was
> > fine to no longer need dm_table_unplug_all() etc. Unfortunately I
> > cannot recall _why_ I felt that was the case.
> >
> > So DM needs further review relative to block's onstack plugging changes
> > and DM IO completion.
>
> dm_suspend is performed as part of the DM table reload that is being
> done my multipathd during path failure. Seems DM no longer insures
> inflight requests have finished during dm_suspend().
>
> Before onstack plugging (< 2.6.39):
> dm_suspend() -> dm_wait_for_completion() -> dm_unplug_all() -> dm_table_unplug_all()
>
> After onstack plugging (>= 2.6.39, commit 7eaceaccab5f40bb):
> dm_suspend's call to dm_wait_for_completion() no longer unplugs IO
> (dm_unplug_all and dm_table_unplug_all were removed without introducing
> a clear equivalent).
If a missing unplug were a concern then dm_wait_for_completion()'s check
for inflight IO would cause dm_suspend() to hang.
So the onstack plugging changes are unlikely to be the reason for this.
Mike
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists