windows-scache-ref-dbg-20061008
[openafs.git] / src / WINNT / afsd / cm_scache.h
index 724a62d..a4c83a2 100644 (file)
@@ -242,6 +242,7 @@ typedef struct cm_scache {
                        (CM_SCACHEFLAG_WATCHED | CM_SCACHEFLAG_WATCHEDSUBTREE)
 
 #define CM_SCACHEFLAG_EACCESS           0x200000 /* Bulk Stat returned EACCES */
+#define CM_SCACHEFLAG_SMB_FID          0x400000
 
 /* sync flags for calls to the server.  The CM_SCACHEFLAG_FETCHING,
  * CM_SCACHEFLAG_STORING and CM_SCACHEFLAG_SIZESTORING flags correspond to the
@@ -322,6 +323,20 @@ extern void cm_MergeStatus(cm_scache_t *, struct AFSFetchStatus *, struct AFSVol
 
 extern void cm_AFSFidFromFid(struct AFSFid *, cm_fid_t *);
 
+#ifdef DEBUG_REFCOUNT
+extern void cm_HoldSCacheNoLockDbg(cm_scache_t *, char *, long);
+
+extern void cm_HoldSCacheDbg(cm_scache_t *, char *, long);
+
+extern void cm_ReleaseSCacheNoLockDbg(cm_scache_t *, char *, long);
+
+extern void cm_ReleaseSCacheDbg(cm_scache_t *, char *, long);
+
+#define cm_HoldSCacheNoLock(scp)    cm_HoldSCacheNoLockDbg(scp, __FILE__, __LINE__)
+#define cm_HoldSCache(scp)          cm_HoldSCacheDbg(scp, __FILE__, __LINE__)
+#define cm_ReleaseSCacheNoLock(scp) cm_ReleaseSCacheNoLockDbg(scp, __FILE__, __LINE__)
+#define cm_ReleaseSCache(scp)       cm_ReleaseSCacheDbg(scp, __FILE__, __LINE__)
+#else
 extern void cm_HoldSCacheNoLock(cm_scache_t *);
 
 extern void cm_HoldSCache(cm_scache_t *);
@@ -329,7 +344,7 @@ extern void cm_HoldSCache(cm_scache_t *);
 extern void cm_ReleaseSCacheNoLock(cm_scache_t *);
 
 extern void cm_ReleaseSCache(cm_scache_t *);
-
+#endif
 extern cm_scache_t *cm_FindSCache(cm_fid_t *fidp);
 
 extern cm_scache_t *cm_FindSCacheParent(cm_scache_t *);
@@ -352,4 +367,5 @@ extern long cm_ShutdownSCache(void);
 
 extern long cm_RecycleSCache(cm_scache_t *scp, afs_int32 flags);
 
+extern void cm_RemoveSCacheFromHashTable(cm_scache_t *scp);
 #endif /*  __CM_SCACHE_H_ENV__ */