Author: pschweitzer
Date: Sun Nov 2 13:10:51 2008
New Revision: 37153
URL:
http://svn.reactos.org/svn/reactos?rev=37153&view=rev
Log:
Implemented FsRtlUninitializeBaseMcb, FsRtlUninitializeLargeMcb
Modified:
branches/pierre-fsd/ntoskrnl/fsrtl/largemcb.c
Modified: branches/pierre-fsd/ntoskrnl/fsrtl/largemcb.c
URL:
http://svn.reactos.org/svn/reactos/branches/pierre-fsd/ntoskrnl/fsrtl/large…
==============================================================================
--- branches/pierre-fsd/ntoskrnl/fsrtl/largemcb.c [iso-8859-1] (original)
+++ branches/pierre-fsd/ntoskrnl/fsrtl/largemcb.c [iso-8859-1] Sun Nov 2 13:10:51 2008
@@ -427,22 +427,35 @@
}
/*
- * @unimplemented
+ * @implemented
*/
VOID
NTAPI
FsRtlUninitializeBaseMcb(IN PBASE_MCB Mcb)
{
- KEBUGCHECK(0);
-}
-
-/*
- * @unimplemented
+ if ((Mcb->PoolType == PagedPool) && (Mcb->MaximumPairCount ==
MAXIMUM_PAIR_COUNT))
+ {
+ ExFreeToPagedLookasideList(&FsRtlFirstMappingLookasideList,
+ Mcb->Mapping);
+ }
+ else
+ {
+ ExFreePoolWithTag(Mcb->Mapping, TAG('F', 'S', 'B',
'C'));
+ }
+}
+
+/*
+ * @implemented
*/
VOID
NTAPI
FsRtlUninitializeLargeMcb(IN PLARGE_MCB Mcb)
{
- KEBUGCHECK(0);
-}
-
+ if (Mcb->FastMutex)
+ {
+ ExFreeToPagedLookasideList(&FsRtlFastMutexLookasideList,
+ Mcb->FastMutex);
+ FsRtlUninitializeBaseMcb(&(Mcb->BaseMcb));
+ }
+}
+