Hi John, > > Using direct_io avoids the page cache. Basicaly, direct_io calls > > back almost immediately into the user space code rather than going > > through the generic_file_read/write path. What that also means is > > that some attrs may not get updated properly if they are getting > > cached in the kernel.
I did not think that using O_DIRECT causes coherence issues in the VFS caches. that would be disastrous for databases that rely on O_DIRECT, no? What attrs don't get updated? > > O_DIRECT doesn't work in FUSE. The kernel throws it back on open > > with an EINVAL. fuse does not implement the direct_IO or get_xip_page callback in address_space_operations. Hence EINVAL. > > > > Hope I could help. If you are planning on using the Fuse code that I > > did, there needs to be some significant testing on your workloads. > > Also, one major problem with my code is that it doesnt work with > > multithreaded fuse. Even if the problem were to be fixed in your code it still wouldn't work because the PVFS system interfaces are not reentrant. thanks for the answers! Murali _______________________________________________ Pvfs2-developers mailing list Pvfs2-developers@beowulf-underground.org http://www.beowulf-underground.org/mailman/listinfo/pvfs2-developers