[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20110809175110.GE23842@htj.dyndns.org>
Date: Tue, 9 Aug 2011 19:51:10 +0200
From: Tejun Heo <tj@...nel.org>
To: Mike Snitzer <snitzer@...hat.com>
Cc: Jeff Moyer <jmoyer@...hat.com>, linux-kernel@...r.kernel.org,
Jens Axboe <jaxboe@...ionio.com>,
Vivek Goyal <vgoyal@...hat.com>, dm-devel@...hat.com
Subject: Re: block: properly handle flush/fua requests in
blk_insert_cloned_request
Hello,
On Tue, Aug 09, 2011 at 01:43:47PM -0400, Mike Snitzer wrote:
> [cc'ing dm-devel]
>
> All of these issues have come to light because DM was not setting
> flush_flags based on the underlying device(s). Now fixed in v3.1-rc1:
> ed8b752 dm table: set flush capability based on underlying devices
>
> Given that commit, and that request-based DM is beneath the elevator, it
> seems any additional effort to have DM flushes re-enter the flush
> machinary is unnecessary.
Hmmm... what if the underlying devices have different featureset? Use
the lowest common denominator? The flush mechanism is designed to
deal with stacking by going through flush at each level. Stacking
queue can simply export support for both REQ_FLUSH and FUA and the
lower lever queue will decompose them according to the capability
supported by the actual device.
IIUC, what's broken here is some insert functions aren't using
ELEVATOR_INSERT_FLUSH when needed and there are some issues due to the
special nature of the stacked requests which I think should be fixed.
Thanks.
--
tejun
--
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