Messages in this thread |  | | | Date | Sat, 25 Mar 2000 16:02:28 -0500 (EST) | | From | Ricky Beam <> | | Subject | Re: Fake SCSI devices |
| |
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/
|  |