Acquire dispatcher lock if we're going to be expanding the owner table, so that we don't enter a race condition with the boost code in the wait for resource code on SMP systems Modified: trunk/reactos/ntoskrnl/ex/resource.c _____
Modified: trunk/reactos/ntoskrnl/ex/resource.c --- trunk/reactos/ntoskrnl/ex/resource.c 2006-01-13 00:16:51 UTC (rev 20825) +++ trunk/reactos/ntoskrnl/ex/resource.c 2006-01-13 00:18:21 UTC (rev 20826) @@ -304,7 +304,7 @@
OldSize * sizeof(OWNER_ENTRY));
/* Acquire dispatcher lock to prevent thread boosting */ - //KeAcquireDispatcherDatabaseLockAtDpcLevel(); + KeAcquireDispatcherDatabaseLockAtDpcLevel();
/* Set the new table data */ Table->TableSize = NewSize; @@ -314,7 +314,7 @@ ExpVerifyResource(Resource);
/* Release locks */ - //KeReleaseDispatcherDatabaseLockFromDpcLevel(); + KeReleaseDispatcherDatabaseLockFromDpcLevel(); ExReleaseResourceLock(&Resource->SpinLock, *OldIrql);
/* Free the old table */