Messages in this thread | | | Date | Wed, 07 Dec 2005 10:34:54 -0500 | From | Peter Staubach <> | Subject | Re: another nfs puzzle |
| |
Trond Myklebust wrote:
>>Yup, same problem. Why is this allowed? Does it really work correctly? >> >> > >Assuming that the processes have _some_ method of synchronisation, then >I cannot see why it shouldn't be workable. Come to think of it, it might >even be possible to use O_DIRECT to provide that synchronisation (use >O_DIRECT to set a "lock" on the page, then modify it using mmap). > >Whether or not there are people out there that actually _want_ to do >this is a different matter. >
Mixing O_DIRECT i/o and cached i/o is probably a recipe for disaster, unless the cooperating programs are very careful and very aware of how the particular file system in the particular kernel implements direct i/o and caching, including cache validation.
This seems like a dangerous enough area that denying mmap on a file which has been opened with O_DIRECT by any process and denying open(O_DIRECT) on a file which has been mmap'd would be a good thing. These things are easy enough to keep track of, so it shouldn't be too hard to implement.
Thanx...
ps - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |