Thread (2 messages) 2 messages, 2 authors, 2004-02-20

Re: How are reads and writes kept in order in raid5.c?

From: Neil Brown <hidden>
Date: 2004-02-20 04:25:59

On Thursday February 19, nathapl@cs.okstate.edu wrote:
I've gotten through most of handle_stripe, but I'm still confused on one 
big thing:  The reads and the writes are separated into two separate lists 
as soon as they come into make_request.  What guarantees they are done in 
order?  I can't see any mechanism that maintains any specific ordering of 
the bion.  Just that reads are done first, when possible, then 
writes.  What am I missing?
You aren't missing anything in the code - no ordering is enforced.

If a filesystem issues a 'write' request and then, before that
completes, issues a read request, the read could get either the before
or after values.  But that is probably true of normal disk-drives
too.  A filesystem simply shouldn't do that.

Does that clear up the question?

NeilBrown
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help