Windows: Additional I/O subsystem trace messages for AFSWrite
authorJeffrey Altman <jaltman@your-file-system.com>
Fri, 25 Jan 2013 05:45:21 +0000 (00:45 -0500)
committerJeffrey Altman <jaltman@your-file-system.com>
Sat, 2 Feb 2013 17:23:28 +0000 (09:23 -0800)
When debugging be able to obtain additional details about the
I/O subsystem.

Change-Id: Ie875870cb874c6df0d8f94781656af8a34eeddf5
Reviewed-on: http://gerrit.openafs.org/8977
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Jeffrey Altman <jaltman@your-file-system.com>
Tested-by: Jeffrey Altman <jaltman@your-file-system.com>

src/WINNT/afsrdr/kernel/lib/AFSWrite.cpp

index 083f0bb..b6acf1c 100644 (file)
@@ -413,6 +413,13 @@ AFSCommonWrite( IN PDEVICE_OBJECT DeviceObject,
             {
                 static const LONGLONG llWriteDelay = (LONGLONG)-100000;
                 bRetry = TRUE;
+
+                AFSDbgLogMsg( AFS_SUBSYSTEM_IO_PROCESSING,
+                              AFS_TRACE_LEVEL_WARNING,
+                              "AFSCommonWrite (FO: %p) CcCanIWrite says No room for %u bytes! Retry in 10ms\n",
+                              pFileObject,
+                              ulByteCount);
+
                 KeDelayExecutionThread(KernelMode, FALSE, (PLARGE_INTEGER)&llWriteDelay);
             }
         }
@@ -892,6 +899,14 @@ AFSNonCachedWrite( IN PDEVICE_OBJECT DeviceObject,
     {
         Irp->IoStatus.Information = 0;
 
+        AFSDbgLogMsg( AFS_SUBSYSTEM_IO_PROCESSING,
+                      AFS_TRACE_LEVEL_VERBOSE,
+                      "AFSNonCachedWrite (FO: %p) StartingByte %08lX:%08lX Length %08lX\n",
+                      pFileObject,
+                      StartingByte.HighPart,
+                      StartingByte.LowPart,
+                      ByteCount);
+
         if (ByteCount > pDevExt->Specific.RDR.MaxIo.QuadPart)
         {
 
@@ -1404,8 +1419,11 @@ try_exit:
 
         AFSDbgLogMsg( AFS_SUBSYSTEM_IO_PROCESSING,
                       AFS_TRACE_LEVEL_VERBOSE,
-                      "AFSNonCachedWrite (%p) Completed request Status %08lX\n",
-                      Irp,
+                      "AFSNonCachedWrite (FO: %p) StartingByte %08lX:%08lX Length %08lX Status %08lX\n",
+                      pFileObject,
+                      StartingByte.HighPart,
+                      StartingByte.LowPart,
+                      ByteCount,
                       ntStatus);
 
         if (NT_SUCCESS(ntStatus) &&