* write barrier in RAID5
@ 2015-04-01 18:24 Eric Mei
2015-04-07 1:25 ` NeilBrown
0 siblings, 1 reply; 2+ messages in thread
From: Eric Mei @ 2015-04-01 18:24 UTC (permalink / raw)
To: linux-raid
I can see how FUA is handled, but REQ_FLUSH seems problematic. My
understanding of REQ_FLUSH semantics: all requests before the flush
request must *complete* before the flush request complete. For IO remap
layer like MD, we need to guarantee all previous requests are
*submitted* to component devices before submitting the flush request. Is
that correct?
If so why I don't see the code which make sure the pending write
requests in stripe cache are processed & submitted before
submit_flushes() get called? Thanks
Eric
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: write barrier in RAID5
2015-04-01 18:24 write barrier in RAID5 Eric Mei
@ 2015-04-07 1:25 ` NeilBrown
0 siblings, 0 replies; 2+ messages in thread
From: NeilBrown @ 2015-04-07 1:25 UTC (permalink / raw)
To: Eric Mei; +Cc: linux-raid
[-- Attachment #1: Type: text/plain, Size: 1236 bytes --]
On Wed, 01 Apr 2015 12:24:38 -0600 Eric Mei <meijia@gmail.com> wrote:
> I can see how FUA is handled, but REQ_FLUSH seems problematic. My
> understanding of REQ_FLUSH semantics: all requests before the flush
> request must *complete* before the flush request complete. For IO remap
> layer like MD, we need to guarantee all previous requests are
> *submitted* to component devices before submitting the flush request. Is
> that correct?
No.
See Documentation/block/writeback_cache_control.txt
Only "previously completed" requests are affect by REQ_FLUSH.
So any code using REQ_FLUSH must first wait for previous requests to
complete, and then submit REQ_FLUSH. The REQ_FLUSH will not return until the
data written by those requests is actually in stable storage, rather than
write-behind cache.
NeilBrown
>
> If so why I don't see the code which make sure the pending write
> requests in stripe cache are processed & submitted before
> submit_flushes() get called? Thanks
>
> Eric
> --
> To unsubscribe from this list: send the line "unsubscribe linux-raid" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 811 bytes --]
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2015-04-07 1:25 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-04-01 18:24 write barrier in RAID5 Eric Mei
2015-04-07 1:25 ` NeilBrown
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.