Use only one access to the spinlock in the assertion, because the value may change between two access' on smp machines.
Modified: trunk/reactos/ntoskrnl/ke/spinlock.c
--- trunk/reactos/ntoskrnl/ke/spinlock.c 2005-03-13 09:10:36 UTC (rev 13999) +++ trunk/reactos/ntoskrnl/ke/spinlock.c 2005-03-13 09:14:59 UTC (rev 14000) @@ -178,7 +178,7 @@
* FIXME: This depends on gcc assembling this test to a single load from * the spinlock's value. */
- ASSERT(*SpinLock == 0 || *SpinLock == 1);
+ ASSERT(*SpinLock < 2);
while ((i = InterlockedExchangeUL(SpinLock, 1)) == 1) {