lkml.org 
[lkml]   [2009]   [Mar]   [31]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH 1/7] block: Add block_flush_device()


    On Tue, 31 Mar 2009, Ric Wheeler wrote:
    >
    > Now you are just being silly. The drive and the write cache - without barriers
    > or similar tagged operations - will almost certainly reorder all of the IO's
    > internally.

    You do realize that the "drive" may not be a drive at all?

    But apparently you don't. You really seem to see just your own case, and
    have blinders on for everything else.

    That "drive" may be some virtualized device. It may be some super-fancy
    memory mapped and largely undocumented random flash thing. It might be a
    network block device, it may be somebody's IO trace dummy layer, it may be
    anything at all.

    Your filesystem doesn't know. It damn well not even _try_ to know, because
    it isn't the low-level driver.

    The low-level driver - which you don't have a friggin clue about - may say
    that it doesn't support barrier IO for any random reason that has
    absolutely _nothing_ to do with any write caches or anything else. Maybe
    the device has the same ordering semantics as an Intel CPU has: writes are
    always seen in order on the disk, and reads are always speculated but will
    snoop in write buffers, and ther is no way to not do that.

    See? EOPNOTSUPP means just that - it means that the driver doesn't support
    the notion of ordered IO. But that does not necessarily mean that the
    writes aren't always in order. It may well just mean that the drive is a
    thin shimmy layer over something else (for example, just a user level
    pipe), and the driver has NO IDEA what the end result is, and the protocol
    is simplistic and is just 'read' and 'write' and absolutely nothing else.

    But you seem to NOT UNDERSTAND THIS.

    I'm not interested in your inane drivel. Let's just say that your lack of
    understanding just means that your input is irrelevant, and leave it at
    that. Ok? Until you can see the bigger picture, just don't bother.

    Linus


    \
     
     \ /
      Last update: 2009-03-31 17:13    [W:0.023 / U:61.220 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site