[ros-dev] [ros-diffs] [pschweitzer] 38432: FsRtlInitializeLargeMcb: Initialize fast mutex gate

Alex Ionescu ionucu at videotron.ca
Sun Dec 28 23:12:19 CET 2008


Use a guarded mutex instead -- you're confused with what's actually  
going on.

Fast mutexes use events, Guarded mutexes use gates. Both are  
initialized by their respective Ke/Ex/InitializeFast/Guarded mutex.

On 28-Dec-08, at 3:06 PM, pschweitzer at svn.reactos.org wrote:

> Author: pschweitzer
> Date: Sun Dec 28 14:06:08 2008
> New Revision: 38432
>
> URL: http://svn.reactos.org/svn/reactos?rev=38432&view=rev
> Log:
> FsRtlInitializeLargeMcb: Initialize fast mutex gate
>
> 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/largemcb.c?rev=38432&r1=38431&r2=38432&view=diff
> = 
> = 
> = 
> = 
> = 
> = 
> = 
> = 
> ======================================================================
> --- branches/pierre-fsd/ntoskrnl/fsrtl/largemcb.c [iso-8859-1]  
> (original)
> +++ branches/pierre-fsd/ntoskrnl/fsrtl/largemcb.c [iso-8859-1] Sun  
> Dec 28 14:06:08 2008
> @@ -130,7 +130,9 @@
>                         IN POOL_TYPE PoolType)
> {
>     Mcb->FastMutex =  
> ExAllocateFromNPagedLookasideList(&FsRtlFastMutexLookasideList);
> +
>     ExInitializeFastMutex(Mcb->FastMutex);
> +    KeInitializeGate((PKGATE)&(Mcb->FastMutex->Gate));
>
>     FsRtlInitializeBaseMcb(&(Mcb->BaseMcb), PoolType);
> }
>

Best regards,
Alex Ionescu



More information about the Ros-dev mailing list