[lkml]   [2001]   [Mar]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread

    On Wed, Mar 07, 2001 at 03:12:41PM +0100, Jens Axboe wrote:
    > Yep, it's much harder than it seems. Especially because for the barrier
    > to be really useful, having inter-request dependencies becomes a
    > requirement. So you can say something like 'flush X and Y, but don't
    > flush Y before X is done'.

    Yes. Fortunately, the simplest possible barrier is just a matter of
    marking a request as non-reorderable, and then making sure that you
    both flush the elevator queue before servicing that request, and defer
    any subsequent requests until the barrier request has been satisfied.
    One it has gone through, you can let through the deferred requests (in
    order, up to the point at which you encounter another barrier).

    Only if the queue is empty can you give a barrier request directly to
    the driver. The special optimisation you can do in this case with
    SCSI is to continue to allow new requests through even before the
    barrier has completed if the disk supports ordered queue tags.

    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to
    More majordomo info at
    Please read the FAQ at

     \ /
      Last update: 2005-03-22 13:29    [W:0.020 / U:4.380 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site