Windows: buf_CleanAsync is not async; rename it
[openafs.git] / src / WINNT / afsd / cm_buf.h
index 3c5e293..eaedf12 100644 (file)
@@ -13,6 +13,8 @@
 #define OPENAFS_WINNT_AFSD_BUF_H 1
 
 #include <osi.h>
+#include <opr/jhash.h>
+
 #ifdef DISKCACHE95
 #include "cm_diskcache.h"
 #endif /* DISKCACHE95 */
 #define CM_BUF_CACHETYPE_VIRTUAL 2
 extern int buf_cacheType;
 
-/* force it to be signed so that mod comes out positive or 0 */
-#define BUF_HASH(fidp,offsetp) ((((fidp)->hash \
-                               +(offsetp)->LowPart) / cm_data.buf_blockSize)   \
-                                  % cm_data.buf_hashSize)
+#define BUF_HASH(fidp, offsetp) \
+    (opr_jhash((uint32_t *)(offsetp), 2, (fidp)->hash) & (cm_data.buf_hashSize - 1))
 
-/* another hash fn */
-#define BUF_FILEHASH(fidp) ((fidp)->hash % cm_data.buf_hashSize)
+#define BUF_FILEHASH(fidp) ((fidp)->hash & (cm_data.buf_hashSize - 1))
 
 #define CM_BUF_MAGIC    ('B' | 'U' <<8 | 'F'<<16 | 'F'<<24)
 
@@ -178,9 +177,9 @@ extern long buf_GetNewLocked(struct cm_scache *, osi_hyper_t *, cm_req_t *, cm_b
 
 extern long buf_Get(struct cm_scache *, osi_hyper_t *, cm_req_t *, cm_buf_t **);
 
-extern afs_uint32 buf_CleanAsyncLocked(cm_scache_t *, cm_buf_t *, cm_req_t *, afs_uint32 flags, afs_uint32 *);
+extern afs_uint32 buf_CleanLocked(cm_scache_t *, cm_buf_t *, cm_req_t *, afs_uint32 flags, afs_uint32 *);
 
-extern afs_uint32 buf_CleanAsync(cm_scache_t *, cm_buf_t *, cm_req_t *, afs_uint32 flags, afs_uint32 *);
+extern afs_uint32 buf_Clean(cm_scache_t *, cm_buf_t *, cm_req_t *, afs_uint32 flags, afs_uint32 *);
 
 extern void buf_CleanWait(cm_scache_t *, cm_buf_t *, afs_uint32 locked);