Re: Fake SCSI devices

From: Ricky Beam (jfbeam@bluetopia.net)
Date: Sat Mar 25 2000 - 16:02:28 EST

  • Next message: Sasi Peter: "CMD bug report - any progress?"

    On Fri, 24 Mar 2000, Helge Hafting wrote:
    >This because each machine have a disk cache, and can't know when the
    >other is writing to the disk. Cache contents will be wrong after such a
    >write.
    >You probably can't snoop a scsi bus, and even that would be open to
    >races.

    Correct. If _anything_ ever writes to the disk, then other systems cache
    would no longer be consistent. There would need to be a cache controller
    to inform all the other machines of a write -- thie would have to be tied
    almost directly into the scsi code as the write command must have been
    completed (sent to the drive and acknowledged as done) before telling
    everyone else to invalidate their cache for that block.

    This would end up looking alot like NFS with the cache messages instead of
    RPC calls. Bastardized systems like this already exist -- they are
    expensive. It's been my experince that they don't work very well (all
    things concidered.) Granted, it gets alot of "neat trick" points.

    >If you want both to mount the same partition for writing (or one writing
    >and another simultaneous read-only) please write a new filesystem where
    >each machine
    >ask all the others for permission (and invalidate their cached blocks)
    >before each write.

    Ever head of AFS? this is very close to what it's cache manager does.
    (Although, writes are feed back to the server immediately and then it
     informs all the referencing caches the data changed. It's bloody mess
     on a slow (read: dialup) connection.)

    --Ricky

    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.rutgers.edu
    Please read the FAQ at http://www.tux.org/lkml/



    This archive was generated by hypermail 2b29 : Sat Mar 25 2000 - 16:13:45 EST