ntoskrnl.exe: Implement ExDeletePagedLookasideList.
Signed-off-by: Jacek Caban <jacek@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
parent
fac633495d
commit
7e14df06f1
|
@ -2019,29 +2019,6 @@ NTSTATUS WINAPI ExCreateCallback(PCALLBACK_OBJECT *obj, POBJECT_ATTRIBUTES attr,
|
|||
}
|
||||
|
||||
|
||||
/***********************************************************************
|
||||
* ExDeleteNPagedLookasideList (NTOSKRNL.EXE.@)
|
||||
*/
|
||||
void WINAPI ExDeleteNPagedLookasideList( PNPAGED_LOOKASIDE_LIST lookaside )
|
||||
{
|
||||
void *entry;
|
||||
|
||||
TRACE("(%p)\n", lookaside);
|
||||
|
||||
while ((entry = RtlInterlockedPopEntrySList(&lookaside->L.u.ListHead)))
|
||||
lookaside->L.u5.FreeEx(entry, (LOOKASIDE_LIST_EX*)lookaside);
|
||||
}
|
||||
|
||||
|
||||
/***********************************************************************
|
||||
* ExDeletePagedLookasideList (NTOSKRNL.EXE.@)
|
||||
*/
|
||||
void WINAPI ExDeletePagedLookasideList( PPAGED_LOOKASIDE_LIST lookaside )
|
||||
{
|
||||
FIXME("(%p) stub\n", lookaside);
|
||||
}
|
||||
|
||||
|
||||
/***********************************************************************
|
||||
* ExFreePool (NTOSKRNL.EXE.@)
|
||||
*/
|
||||
|
@ -2112,6 +2089,32 @@ void WINAPI ExInitializePagedLookasideList(PPAGED_LOOKASIDE_LIST lookaside,
|
|||
initialize_lookaside_list( &lookaside->L, allocate, free, PagedPool | flags, size, tag );
|
||||
}
|
||||
|
||||
static void delete_lookaside_list( GENERAL_LOOKASIDE *lookaside )
|
||||
{
|
||||
void *entry;
|
||||
while ((entry = RtlInterlockedPopEntrySList(&lookaside->u.ListHead)))
|
||||
lookaside->u5.FreeEx(entry, (LOOKASIDE_LIST_EX*)lookaside);
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* ExDeleteNPagedLookasideList (NTOSKRNL.EXE.@)
|
||||
*/
|
||||
void WINAPI ExDeleteNPagedLookasideList( PNPAGED_LOOKASIDE_LIST lookaside )
|
||||
{
|
||||
TRACE( "%p\n", lookaside );
|
||||
delete_lookaside_list( &lookaside->L );
|
||||
}
|
||||
|
||||
|
||||
/***********************************************************************
|
||||
* ExDeletePagedLookasideList (NTOSKRNL.EXE.@)
|
||||
*/
|
||||
void WINAPI ExDeletePagedLookasideList( PPAGED_LOOKASIDE_LIST lookaside )
|
||||
{
|
||||
TRACE( "%p\n", lookaside );
|
||||
delete_lookaside_list( &lookaside->L );
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* ExInitializeZone (NTOSKRNL.EXE.@)
|
||||
*/
|
||||
|
|
Loading…
Reference in New Issue