Author: pschweitzer
Date: Sun May 24 15:26:15 2015
New Revision: 67883
URL:
http://svn.reactos.org/svn/reactos?rev=67883&view=rev
Log:
[NTFS]
Use non-paged lookaside list for IRP context allocation
Modified:
trunk/reactos/drivers/filesystems/ntfs/dispatch.c
trunk/reactos/drivers/filesystems/ntfs/misc.c
trunk/reactos/drivers/filesystems/ntfs/ntfs.c
trunk/reactos/drivers/filesystems/ntfs/ntfs.h
Modified: trunk/reactos/drivers/filesystems/ntfs/dispatch.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/filesystems/ntfs/d…
==============================================================================
--- trunk/reactos/drivers/filesystems/ntfs/dispatch.c [iso-8859-1] (original)
+++ trunk/reactos/drivers/filesystems/ntfs/dispatch.c [iso-8859-1] Sun May 24 15:26:15
2015
@@ -117,7 +117,7 @@
}
else
{
- ExFreePoolWithTag(IrpContext, 'PRIN');
+ ExFreeToNPagedLookasideList(&NtfsGlobalData->IrpContextLookasideList,
IrpContext);
}
IoSetTopLevelIrp(NULL);
Modified: trunk/reactos/drivers/filesystems/ntfs/misc.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/filesystems/ntfs/m…
==============================================================================
--- trunk/reactos/drivers/filesystems/ntfs/misc.c [iso-8859-1] (original)
+++ trunk/reactos/drivers/filesystems/ntfs/misc.c [iso-8859-1] Sun May 24 15:26:15 2015
@@ -70,9 +70,7 @@
TRACE_(NTFS, "NtfsAllocateIrpContext()\n");
- IrpContext = (PNTFS_IRP_CONTEXT)ExAllocatePoolWithTag(NonPagedPool,
- sizeof(NTFS_IRP_CONTEXT),
- 'PRIN');
+ IrpContext =
(PNTFS_IRP_CONTEXT)ExAllocateFromNPagedLookasideList(&NtfsGlobalData->IrpContextLookasideList);
if (IrpContext == NULL)
return NULL;
Modified: trunk/reactos/drivers/filesystems/ntfs/ntfs.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/filesystems/ntfs/n…
==============================================================================
--- trunk/reactos/drivers/filesystems/ntfs/ntfs.c [iso-8859-1] (original)
+++ trunk/reactos/drivers/filesystems/ntfs/ntfs.c [iso-8859-1] Sun May 24 15:26:15 2015
@@ -96,6 +96,10 @@
NtfsGlobalData->FastIoDispatch.FastIoWrite = NtfsFastIoWrite;
DriverObject->FastIoDispatch = &NtfsGlobalData->FastIoDispatch;
+ /* Initialize lookaside list for IRP contexts */
+ ExInitializeNPagedLookasideList(&NtfsGlobalData->IrpContextLookasideList,
+ NULL, NULL, 0, sizeof(NTFS_IRP_CONTEXT),
'PRIN', 0);
+
/* Driver can't be unloaded */
DriverObject->DriverUnload = NULL;
Modified: trunk/reactos/drivers/filesystems/ntfs/ntfs.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/filesystems/ntfs/n…
==============================================================================
--- trunk/reactos/drivers/filesystems/ntfs/ntfs.h [iso-8859-1] (original)
+++ trunk/reactos/drivers/filesystems/ntfs/ntfs.h [iso-8859-1] Sun May 24 15:26:15 2015
@@ -137,6 +137,7 @@
CACHE_MANAGER_CALLBACKS CacheMgrCallbacks;
ULONG Flags;
FAST_IO_DISPATCH FastIoDispatch;
+ NPAGED_LOOKASIDE_LIST IrpContextLookasideList;
} NTFS_GLOBAL_DATA, *PNTFS_GLOBAL_DATA;