From 7c3f5bfba68964dfda989adb59a2b9efdb37eb4d Mon Sep 17 00:00:00 2001 From: Jeffrey Altman Date: Fri, 25 Jan 2013 00:45:21 -0500 Subject: [PATCH] Windows: Additional I/O subsystem trace messages for AFSWrite 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 Reviewed-by: Jeffrey Altman Tested-by: Jeffrey Altman --- src/WINNT/afsrdr/kernel/lib/AFSWrite.cpp | 22 ++++++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) diff --git a/src/WINNT/afsrdr/kernel/lib/AFSWrite.cpp b/src/WINNT/afsrdr/kernel/lib/AFSWrite.cpp index 083f0bbed..b6acf1c4d 100644 --- a/src/WINNT/afsrdr/kernel/lib/AFSWrite.cpp +++ b/src/WINNT/afsrdr/kernel/lib/AFSWrite.cpp @@ -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) && -- 2.39.5