Windows: add AFS_OBJECT_REFERENCE_FS_REQ
[openafs.git] / src / WINNT / afsrdr / kernel / lib / Include / AFSDefines.h
index b736e4a..566c41c 100644 (file)
@@ -118,6 +118,7 @@ NTSTATUS
 #define AFS_WORK_ENUMERATE_GLOBAL_ROOT          0x0006
 #define AFS_WORK_INVALIDATE_OBJECT              0x0007
 #define AFS_WORK_START_IOS                      0x0008
+#define AFS_WORK_DEFERRED_WRITE                 0x0009
 
 //
 // Worker request flags
@@ -152,6 +153,39 @@ NTSTATUS
 #define AFS_OBJECT_HELD_IN_SERVICE                      0x00000080
 #define AFS_OBJECT_ROOT_VOLUME                          0x00000100
 #define AFS_OBJECT_FLAGS_VERIFY_DATA                    0x00000200
+#define AFS_OBJECT_FLAGS_PARENT_FID                     0x00000400
+
+//
+// Object information reference count reasons
+//
+
+#define AFS_OBJECT_REFERENCE_DIRENTRY                   0
+#define AFS_OBJECT_REFERENCE_CHILD                      1
+#define AFS_OBJECT_REFERENCE_INVALIDATION               2
+#define AFS_OBJECT_REFERENCE_GLOBAL                     3
+#define AFS_OBJECT_REFERENCE_EXTENTS                    4
+#define AFS_OBJECT_REFERENCE_WORKER                     5
+#define AFS_OBJECT_REFERENCE_STATUS                     6
+#define AFS_OBJECT_REFERENCE_FIND                       7
+#define AFS_OBJECT_REFERENCE_FS_REQ                     8
+#define AFS_OBJECT_REFERENCE_MAX                        9
+
+//
+// Volume reference count reasons
+//
+
+#define AFS_VOLUME_REFERENCE_INVALID                    0
+#define AFS_VOLUME_REFERENCE_EXTENTS                    1
+#define AFS_VOLUME_REFERENCE_GLOBAL_ROOT                2
+#define AFS_VOLUME_REFERENCE_INVALIDATE                 3
+#define AFS_VOLUME_REFERENCE_FILE_ATTRS                 4
+#define AFS_VOLUME_REFERENCE_EVAL_ROOT                  5
+#define AFS_VOLUME_REFERENCE_GET_OBJECT                 6
+#define AFS_VOLUME_REFERENCE_MOUNTPT                    7
+#define AFS_VOLUME_REFERENCE_BUILD_ROOT                 8
+#define AFS_VOLUME_REFERENCE_LOCATE_NAME                9
+#define AFS_VOLUME_REFERENCE_PARSE_NAME                10
+#define AFS_VOLUME_REFERENCE_MAX                       12
 
 //
 // Define one second in terms of 100 nS units
@@ -165,7 +199,7 @@ NTSTATUS
 // Fcb lifetime in seconds
 //
 
-#define AFS_OBJECT_LIFETIME             600 * AFS_ONE_SECOND
+#define AFS_OBJECT_LIFETIME             20 * AFS_ONE_SECOND
 
 #define AFS_EXTENT_REQUEST_TIME         10 * AFS_ONE_SECOND
 
@@ -194,7 +228,7 @@ NTSTATUS
     ((((ULONG)(Ptr)) + 7) & 0xfffffff8) \
     )
 
-#define CRC32_POLYNOMIAL     0xEDB88320L;
+#define CRC32_POLYNOMIAL     0xEDB88320L
 
 #define AFS_SERVER_FLUSH_DELAY  (5LL * AFS_ONE_SECOND)
 #define AFS_SERVER_PURGE_DELAY  (300LL * AFS_ONE_SECOND)
@@ -231,6 +265,7 @@ NTSTATUS
 #define CCB_FLAG_MASK_PIOCTL_QUERY          0x00000040
 #define CCB_FLAG_MASK_OPENED_REPARSE_POINT  0x00000080
 #define CCB_FLAG_INSERTED_CCB_LIST          0x00000100
+#define CCB_FLAG_DIRECTORY_QUERY_DIRECT_QUERY 0x00000200
 
 //
 // DirEntry flags
@@ -344,7 +379,7 @@ NTSTATUS
 
 #define AFS_MAXIMUM_EXTENT_RELEASE_COUNT        100
 
-#define AFS_DIRTY_CHUNK_THRESHOLD               2
+#define AFS_DIRTY_CHUNK_THRESHOLD               64
 
 // {41966169-3FD7-4392-AFE4-E6A9D0A92C72}  - generated using guidgen.exe
 DEFINE_GUID (GUID_SD_AFS_REDIRECTOR_CONTROL_OBJECT,