[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [patch] Add support for barriers to blk{back,front} drivers.



Keir Fraser wrote:
> What happens (even on native Linux) if you have, say, a RAID array in which
> some of the discs support barriers and others don't?

The raid0 driver doesn't support barriers in the first place.  Not sure
about the other raid drivers.

> Or you have a RAID-0 set, so that some barrier
> writes can succeed and others can't:

I think that can never ever happen.  To maintain correct barrier
semantics for the complete raid0 it is not enough to simply pass down
the barrier request to the disk which happens to hold the block in
question.  You have to somehow synchronize the disks as well.

> must the filesystem handle
> barrier_write failures at any time?

The linux filesystems do.  The usual way to handle the error is to
submit the request again as normal request and turn off the barrier flag
so the filesystem driver wouldn't use barrier requests again (and enter
fallback mode).  It doesn't matter whenever that happens on the very
first or any subsequent barrier write request.

As far I know barriers are always a all-or-nothing thingy.  Either they
work or they don't.  Only problem is that there is no reliable way to
figure without actually submitting a barrier request.  I don't like it
that much either, but the existing hardware forces us to handle it that
way.  Life sucks sometimes ...

cheers,
  Gerd

-- 
Gerd Hoffmann <kraxel@xxxxxxx>
http://www.suse.de/~kraxel/julika-dora.jpeg

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.