On 08/08/2010 04:31 PM, Christoph Hellwig wrote:
On Sat, Aug 07, 2010 at 12:13:06PM +0200, Tejun Heo wrote:
quoted
The patch was on top of v2.6.35 but was generated against dirty tree
and wouldn't apply cleanly. Here's the proper one.
Here's an updated version:
(a) ported to Jens' current block tree
(b) optimize barriers on devices not requiring flushes to be no-ops
(b) redo the blk_queue_ordered interface to just set QUEUE_HAS_FLUSH
and QUEUE_HAS_FUA flags.
Nice. I'm working on a properly split patchset implementing
REQ_FLUSH/FUA based interface, which replaces REQ_HARDBARRIER. Empty
request w/ REQ_FLUSH just flushes cache but has no other ordering
restrictions. REQ_FLUSH + data means preflush + data write. REQ_FUA
+ data means data would be committed to NV media on completion.
REQ_FLUSH + FUA + data means preflush + NV data write. All FLUSH/FUA
requests w/ data are ordered only against each other. I think I'll be
able to post in several days.
Thanks.
--
tejun