DEVEL15-bypasscache-20080922
[openafs.git] / src / afs / afs_osi_vm.c
index 74aa51c..ccd4efd 100644 (file)
@@ -51,6 +51,16 @@ osi_FlushPages(register struct vcache *avc, struct AFS_UCRED *credp)
 {
     int vfslocked;
     afs_hyper_t origDV;
+#if defined(AFS_CACHE_BYPASS)
+    /* The optimization to check DV under read lock below is identical a 
+     * change in CITI cache bypass work.  The problem CITI found in 1999 
+     * was that this code and background daemon doing prefetching competed 
+     * for the vcache entry shared lock.  It's not clear to me from the 
+     * tech report, but it looks like CITI fixed the general prefetch code
+     * path as a bonus when experimenting on prefetch for cache bypass, see
+     * citi-tr-01-3.
+     */
+#endif        
     ObtainReadLock(&avc->lock);
     /* If we've already purged this version, or if we're the ones
      * writing this version, don't flush it (could lose the