From: Jeffrey Altman Date: Thu, 17 Jan 2013 06:42:54 +0000 (-0500) Subject: Windows: Set dirty page limit to 2 x ChunkSize / 4096 X-Git-Tag: upstream/1.8.0_pre1^2~1598 X-Git-Url: https://git.michaelhowe.org/gitweb/?a=commitdiff_plain;h=5be1779547d800e1a040fe1969336adab0c01afa;p=packages%2Fo%2Fopenafs.git Windows: Set dirty page limit to 2 x ChunkSize / 4096 4096 is the size of a memory manager page. ChunkSize is in octets. Windows doesn't wait until the limit is reached to begin flushing and ChunkSize is not a hard limit. Change-Id: Ic1d5dda18eefbf309696b8a19ef5623248f54faf Reviewed-on: http://gerrit.openafs.org/8965 Reviewed-by: Rod Widdowson Tested-by: BuildBot Reviewed-by: Jeffrey Altman Tested-by: Jeffrey Altman --- diff --git a/src/WINNT/afsrdr/kernel/lib/AFSRead.cpp b/src/WINNT/afsrdr/kernel/lib/AFSRead.cpp index c9258d349..b3565d2c9 100644 --- a/src/WINNT/afsrdr/kernel/lib/AFSRead.cpp +++ b/src/WINNT/afsrdr/kernel/lib/AFSRead.cpp @@ -1152,7 +1152,7 @@ AFSCommonRead( IN PDEVICE_OBJECT DeviceObject, pDeviceExt->Specific.RDR.MaximumRPCLength); CcSetDirtyPageThreshold( pFileObject, - AFS_DIRTY_CHUNK_THRESHOLD * pDeviceExt->Specific.RDR.MaximumRPCLength); + AFS_DIRTY_CHUNK_THRESHOLD * pDeviceExt->Specific.RDR.MaximumRPCLength / 4096); } __except( EXCEPTION_EXECUTE_HANDLER) { diff --git a/src/WINNT/afsrdr/kernel/lib/AFSWrite.cpp b/src/WINNT/afsrdr/kernel/lib/AFSWrite.cpp index b6ce79c21..083f0bbed 100644 --- a/src/WINNT/afsrdr/kernel/lib/AFSWrite.cpp +++ b/src/WINNT/afsrdr/kernel/lib/AFSWrite.cpp @@ -373,7 +373,7 @@ AFSCommonWrite( IN PDEVICE_OBJECT DeviceObject, pDeviceExt->Specific.RDR.MaximumRPCLength); CcSetDirtyPageThreshold( pFileObject, - AFS_DIRTY_CHUNK_THRESHOLD * pDeviceExt->Specific.RDR.MaximumRPCLength); + AFS_DIRTY_CHUNK_THRESHOLD * pDeviceExt->Specific.RDR.MaximumRPCLength / 4096); } __except( EXCEPTION_EXECUTE_HANDLER) {