Author: tfaber
Date: Sat Sep 10 10:48:07 2011
New Revision: 53669

URL: http://svn.reactos.org/svn/reactos?rev=53669&view=rev
Log:
[KMTESTS]
- Skip the remaining tests that result in assertions
- Hide KeProcessor test, as it takes very long

Modified:
    branches/GSoC_2011/KMTestSuite/kmtests/kmtest_drv/testlist.c
    branches/GSoC_2011/KMTestSuite/kmtests/ntos_ex/ExFastMutex.c
    branches/GSoC_2011/KMTestSuite/kmtests/ntos_ex/ExResource.c
    branches/GSoC_2011/KMTestSuite/kmtests/ntos_fsrtl/FsRtlExpression.c
    branches/GSoC_2011/KMTestSuite/kmtests/ntos_ke/KeApc.c

Modified: branches/GSoC_2011/KMTestSuite/kmtests/kmtest_drv/testlist.c
URL: 
http://svn.reactos.org/svn/reactos/branches/GSoC_2011/KMTestSuite/kmtests/kmtest_drv/testlist.c?rev=53669&r1=53668&r2=53669&view=diff
==============================================================================
--- branches/GSoC_2011/KMTestSuite/kmtests/kmtest_drv/testlist.c [iso-8859-1] 
(original)
+++ branches/GSoC_2011/KMTestSuite/kmtests/kmtest_drv/testlist.c [iso-8859-1] 
Sat Sep 10 10:48:07 2011
@@ -61,7 +61,7 @@
     { "KeEvent",                            Test_KeEvent },
     { "KeGuardedMutex",                     Test_KeGuardedMutex },
     { "KeIrql",                             Test_KeIrql },
-    { "KeProcessor",                        Test_KeProcessor },
+    { "-KeProcessor",                       Test_KeProcessor },
     { "-KernelType",                        Test_KernelType },
     { "ObReference",                        Test_ObReference },
     { "ObType",                             Test_ObType },

Modified: branches/GSoC_2011/KMTestSuite/kmtests/ntos_ex/ExFastMutex.c
URL: 
http://svn.reactos.org/svn/reactos/branches/GSoC_2011/KMTestSuite/kmtests/ntos_ex/ExFastMutex.c?rev=53669&r1=53668&r2=53669&view=diff
==============================================================================
--- branches/GSoC_2011/KMTestSuite/kmtests/ntos_ex/ExFastMutex.c [iso-8859-1] 
(original)
+++ branches/GSoC_2011/KMTestSuite/kmtests/ntos_ex/ExFastMutex.c [iso-8859-1] 
Sat Sep 10 10:48:07 2011
@@ -52,12 +52,6 @@
     ExiReleaseFastMutex(Mutex);
     CheckMutex(Mutex, 1L, NULL, 0LU, OriginalIrql, OriginalIrql);
 
-    /* acquire/release unsafe */
-    ExAcquireFastMutexUnsafe(Mutex);
-    CheckMutex(Mutex, 0L, Thread, 0LU, OriginalIrql, OriginalIrql);
-    ExReleaseFastMutexUnsafe(Mutex);
-    CheckMutex(Mutex, 1L, NULL, 0LU, OriginalIrql, OriginalIrql);
-
     /* try to acquire */
     ok_bool_true(ExTryToAcquireFastMutex(Mutex), "ExTryToAcquireFastMutex 
returned");
     CheckMutex(Mutex, 0L, Thread, 0LU, OriginalIrql, APC_LEVEL);
@@ -69,33 +63,45 @@
     ok_bool_true(KeAreApcsDisabled(), "KeAreApcsDisabled returned");
     ExReleaseFastMutexUnsafeAndLeaveCriticalRegion(Mutex);
 
-    /* mismatched acquire/release */
-    ExAcquireFastMutex(Mutex);
-    CheckMutex(Mutex, 0L, Thread, 0LU, OriginalIrql, APC_LEVEL);
-    ExReleaseFastMutexUnsafe(Mutex);
-    CheckMutex(Mutex, 1L, NULL, 0LU, OriginalIrql, APC_LEVEL);
-    KmtSetIrql(OriginalIrql);
-    CheckMutex(Mutex, 1L, NULL, 0LU, OriginalIrql, OriginalIrql);
-
-    Mutex->OldIrql = 0x55555555LU;
-    ExAcquireFastMutexUnsafe(Mutex);
-    CheckMutex(Mutex, 0L, Thread, 0LU, 0x55555555LU, OriginalIrql);
-    Mutex->OldIrql = PASSIVE_LEVEL;
-    ExReleaseFastMutex(Mutex);
-    CheckMutex(Mutex, 1L, NULL, 0LU, PASSIVE_LEVEL, PASSIVE_LEVEL);
-    KmtSetIrql(OriginalIrql);
-    CheckMutex(Mutex, 1L, NULL, 0LU, PASSIVE_LEVEL, OriginalIrql);
-
-    /* release without acquire */
-    ExReleaseFastMutexUnsafe(Mutex);
-    CheckMutex(Mutex, 2L, NULL, 0LU, PASSIVE_LEVEL, OriginalIrql);
-    --Mutex->Count;
-    Mutex->OldIrql = OriginalIrql;
-    ExReleaseFastMutex(Mutex);
-    CheckMutex(Mutex, 2L, NULL, 0LU, OriginalIrql, OriginalIrql);
-    ExReleaseFastMutex(Mutex);
-    CheckMutex(Mutex, 3L, NULL, 0LU, OriginalIrql, OriginalIrql);
-    Mutex->Count -= 2;
+    /* acquire/release unsafe */
+    if (!KmtIsCheckedBuild || OriginalIrql == APC_LEVEL)
+    {
+        ExAcquireFastMutexUnsafe(Mutex);
+        CheckMutex(Mutex, 0L, Thread, 0LU, OriginalIrql, OriginalIrql);
+        ExReleaseFastMutexUnsafe(Mutex);
+        CheckMutex(Mutex, 1L, NULL, 0LU, OriginalIrql, OriginalIrql);
+
+        /* mismatched acquire/release */
+        ExAcquireFastMutex(Mutex);
+        CheckMutex(Mutex, 0L, Thread, 0LU, OriginalIrql, APC_LEVEL);
+        ExReleaseFastMutexUnsafe(Mutex);
+        CheckMutex(Mutex, 1L, NULL, 0LU, OriginalIrql, APC_LEVEL);
+        KmtSetIrql(OriginalIrql);
+        CheckMutex(Mutex, 1L, NULL, 0LU, OriginalIrql, OriginalIrql);
+
+        Mutex->OldIrql = 0x55555555LU;
+        ExAcquireFastMutexUnsafe(Mutex);
+        CheckMutex(Mutex, 0L, Thread, 0LU, 0x55555555LU, OriginalIrql);
+        Mutex->OldIrql = PASSIVE_LEVEL;
+        ExReleaseFastMutex(Mutex);
+        CheckMutex(Mutex, 1L, NULL, 0LU, PASSIVE_LEVEL, PASSIVE_LEVEL);
+        KmtSetIrql(OriginalIrql);
+        CheckMutex(Mutex, 1L, NULL, 0LU, PASSIVE_LEVEL, OriginalIrql);
+    }
+    
+    if (!KmtIsCheckedBuild)
+    {
+        /* release without acquire */
+        ExReleaseFastMutexUnsafe(Mutex);
+        CheckMutex(Mutex, 2L, NULL, 0LU, PASSIVE_LEVEL, OriginalIrql);
+        --Mutex->Count;
+        Mutex->OldIrql = OriginalIrql;
+        ExReleaseFastMutex(Mutex);
+        CheckMutex(Mutex, 2L, NULL, 0LU, OriginalIrql, OriginalIrql);
+        ExReleaseFastMutex(Mutex);
+        CheckMutex(Mutex, 3L, NULL, 0LU, OriginalIrql, OriginalIrql);
+        Mutex->Count -= 2;
+    }
 
     /* make sure we survive this in case of error */
     ok_eq_long(Mutex->Count, 1L);

Modified: branches/GSoC_2011/KMTestSuite/kmtests/ntos_ex/ExResource.c
URL: 
http://svn.reactos.org/svn/reactos/branches/GSoC_2011/KMTestSuite/kmtests/ntos_ex/ExResource.c?rev=53669&r1=53668&r2=53669&view=diff
==============================================================================
--- branches/GSoC_2011/KMTestSuite/kmtests/ntos_ex/ExResource.c [iso-8859-1] 
(original)
+++ branches/GSoC_2011/KMTestSuite/kmtests/ntos_ex/ExResource.c [iso-8859-1] 
Sat Sep 10 10:48:07 2011
@@ -86,8 +86,9 @@
     ok_bool_false(ExAcquireResourceExclusiveLite(Res, FALSE), 
"ExAcquireResourceExclusiveLite returned");
     CheckResourceStatus(Res, FALSE, Count, 0LU, 0LU);
 
-    /* this must not crash or deadlock (but can assert) */
-    ExConvertExclusiveToSharedLite(Res);
+    /* this asserts */
+    if (!KmtIsCheckedBuild)
+        ExConvertExclusiveToSharedLite(Res);
     CheckResourceStatus(Res, FALSE, Count, 0LU, 0LU);
 
     while (Count--)

Modified: branches/GSoC_2011/KMTestSuite/kmtests/ntos_fsrtl/FsRtlExpression.c
URL: 
http://svn.reactos.org/svn/reactos/branches/GSoC_2011/KMTestSuite/kmtests/ntos_fsrtl/FsRtlExpression.c?rev=53669&r1=53668&r2=53669&view=diff
==============================================================================
--- branches/GSoC_2011/KMTestSuite/kmtests/ntos_fsrtl/FsRtlExpression.c 
[iso-8859-1] (original)
+++ branches/GSoC_2011/KMTestSuite/kmtests/ntos_fsrtl/FsRtlExpression.c 
[iso-8859-1] Sat Sep 10 10:48:07 2011
@@ -16,11 +16,15 @@
 {
     UNICODE_STRING Expression, Name;
 
-    RtlInitUnicodeString(&Expression, L"*");
-    RtlInitUnicodeString(&Name, L"");
-    ok(FsRtlIsNameInExpression(&Expression, &Name, FALSE, NULL) == FALSE, 
"expected FALSE, got TRUE");
-    RtlInitUnicodeString(&Expression, L"");
-    ok(FsRtlIsNameInExpression(&Expression, &Name, FALSE, NULL) == TRUE, 
"expected TRUE, got FALSE");
+    /* !Name->Length || !Expression->Length asserts */
+    if (!KmtIsCheckedBuild)
+    {
+        RtlInitUnicodeString(&Expression, L"*");
+        RtlInitUnicodeString(&Name, L"");
+        ok(FsRtlIsNameInExpression(&Expression, &Name, FALSE, NULL) == FALSE, 
"expected FALSE, got TRUE");
+        RtlInitUnicodeString(&Expression, L"");
+        ok(FsRtlIsNameInExpression(&Expression, &Name, FALSE, NULL) == TRUE, 
"expected TRUE, got FALSE");
+    }
 
     RtlInitUnicodeString(&Expression, L"ntdll.dll");
     RtlInitUnicodeString(&Name, L".");
@@ -125,8 +129,11 @@
     RtlInitUnicodeString(&Expression, L"*.?.c.d");
     ok(FsRtlIsNameInExpression(&Expression, &Name, FALSE, NULL) == TRUE, 
"expected TRUE, got FALSE");
     RtlInitUnicodeString(&Expression, L"*?");
-    RtlInitUnicodeString(&Name, L"");
-    ok(FsRtlIsNameInExpression(&Expression, &Name, FALSE, NULL) == FALSE, 
"expected FALSE, got TRUE");
+    if (!KmtIsCheckedBuild)
+    {
+        RtlInitUnicodeString(&Name, L"");
+        ok(FsRtlIsNameInExpression(&Expression, &Name, FALSE, NULL) == FALSE, 
"expected FALSE, got TRUE");
+    }
     RtlInitUnicodeString(&Name, L"a");
     ok(FsRtlIsNameInExpression(&Expression, &Name, FALSE, NULL) == TRUE, 
"expected TRUE, got FALSE");
     RtlInitUnicodeString(&Name, L"aa");
@@ -134,8 +141,11 @@
     RtlInitUnicodeString(&Name, L"aaa");
     ok(FsRtlIsNameInExpression(&Expression, &Name, FALSE, NULL) == TRUE, 
"expected TRUE, got FALSE");
     RtlInitUnicodeString(&Expression, L"?*?");
-    RtlInitUnicodeString(&Name, L"");
-    ok(FsRtlIsNameInExpression(&Expression, &Name, FALSE, NULL) == FALSE, 
"expected FALSE, got TRUE");
+    if (!KmtIsCheckedBuild)
+    {
+        RtlInitUnicodeString(&Name, L"");
+        ok(FsRtlIsNameInExpression(&Expression, &Name, FALSE, NULL) == FALSE, 
"expected FALSE, got TRUE");
+    }
     RtlInitUnicodeString(&Name, L"a");
     ok(FsRtlIsNameInExpression(&Expression, &Name, FALSE, NULL) == FALSE, 
"expected FALSE, got TRUE");
     RtlInitUnicodeString(&Name, L"aa");
@@ -166,11 +176,14 @@
 {
     ANSI_STRING Expression, Name;
 
-    RtlInitAnsiString(&Expression, "*");
-    RtlInitAnsiString(&Name, "");
-    ok(FsRtlIsDbcsInExpression(&Expression, &Name) == FALSE, "expected FALSE, 
got TRUE");
-    RtlInitAnsiString(&Expression, "");
-    ok(FsRtlIsDbcsInExpression(&Expression, &Name) == TRUE, "expected TRUE, 
got FALSE");
+    if (!KmtIsCheckedBuild)
+    {
+        RtlInitAnsiString(&Expression, "*");
+        RtlInitAnsiString(&Name, "");
+        ok(FsRtlIsDbcsInExpression(&Expression, &Name) == FALSE, "expected 
FALSE, got TRUE");
+        RtlInitAnsiString(&Expression, "");
+        ok(FsRtlIsDbcsInExpression(&Expression, &Name) == TRUE, "expected 
TRUE, got FALSE");
+    }
 
     RtlInitAnsiString(&Expression, "ntdll.dll");
     RtlInitAnsiString(&Name, ".");
@@ -275,8 +288,11 @@
     RtlInitAnsiString(&Expression, "*.?.c.d");
     ok(FsRtlIsDbcsInExpression(&Expression, &Name) == TRUE, "expected TRUE, 
got FALSE");
     RtlInitAnsiString(&Expression, "*?");
-    RtlInitAnsiString(&Name, "");
-    ok(FsRtlIsDbcsInExpression(&Expression, &Name) == FALSE, "expected FALSE, 
got TRUE");
+    if (!KmtIsCheckedBuild)
+    {
+        RtlInitAnsiString(&Name, "");
+        ok(FsRtlIsDbcsInExpression(&Expression, &Name) == FALSE, "expected 
FALSE, got TRUE");
+    }
     RtlInitAnsiString(&Name, "a");
     ok(FsRtlIsDbcsInExpression(&Expression, &Name) == TRUE, "expected TRUE, 
got FALSE");
     RtlInitAnsiString(&Name, "aa");
@@ -284,8 +300,11 @@
     RtlInitAnsiString(&Name, "aaa");
     ok(FsRtlIsDbcsInExpression(&Expression, &Name) == TRUE, "expected TRUE, 
got FALSE");
     RtlInitAnsiString(&Expression, "?*?");
-    RtlInitAnsiString(&Name, "");
-    ok(FsRtlIsDbcsInExpression(&Expression, &Name) == FALSE, "expected FALSE, 
got TRUE");
+    if (!KmtIsCheckedBuild)
+    {
+        RtlInitAnsiString(&Name, "");
+        ok(FsRtlIsDbcsInExpression(&Expression, &Name) == FALSE, "expected 
FALSE, got TRUE");
+    }
     RtlInitAnsiString(&Name, "a");
     ok(FsRtlIsDbcsInExpression(&Expression, &Name) == FALSE, "expected FALSE, 
got TRUE");
     RtlInitAnsiString(&Name, "aa");

Modified: branches/GSoC_2011/KMTestSuite/kmtests/ntos_ke/KeApc.c
URL: 
http://svn.reactos.org/svn/reactos/branches/GSoC_2011/KMTestSuite/kmtests/ntos_ke/KeApc.c?rev=53669&r1=53668&r2=53669&view=diff
==============================================================================
--- branches/GSoC_2011/KMTestSuite/kmtests/ntos_ke/KeApc.c [iso-8859-1] 
(original)
+++ branches/GSoC_2011/KMTestSuite/kmtests/ntos_ke/KeApc.c [iso-8859-1] Sat Sep 
10 10:48:07 2011
@@ -71,24 +71,27 @@
     CheckApcs(0, 0, FALSE, PASSIVE_LEVEL);
 
     /* leave without entering */
-    KeLeaveCriticalRegion();
-    CheckApcs(1, 0, FALSE, PASSIVE_LEVEL);
-    KeEnterCriticalRegion();
-    CheckApcs(0, 0, FALSE, PASSIVE_LEVEL);
+    if (!KmtIsCheckedBuild)
+    {
+        KeLeaveCriticalRegion();
+        CheckApcs(1, 0, FALSE, PASSIVE_LEVEL);
+        KeEnterCriticalRegion();
+        CheckApcs(0, 0, FALSE, PASSIVE_LEVEL);
 
-    KeLeaveGuardedRegion();
-    CheckApcs(0, 1, TRUE, PASSIVE_LEVEL);
-    KeEnterGuardedRegion();
-    CheckApcs(0, 0, FALSE, PASSIVE_LEVEL);
+        KeLeaveGuardedRegion();
+        CheckApcs(0, 1, TRUE, PASSIVE_LEVEL);
+        KeEnterGuardedRegion();
+        CheckApcs(0, 0, FALSE, PASSIVE_LEVEL);
 
-    KeLeaveCriticalRegion();
-    CheckApcs(1, 0, FALSE, PASSIVE_LEVEL);
-    KeLeaveGuardedRegion();
-    CheckApcs(1, 1, TRUE, PASSIVE_LEVEL);
-    KeEnterCriticalRegion();
-    CheckApcs(0, 1, TRUE, PASSIVE_LEVEL);
-    KeEnterGuardedRegion();
-    CheckApcs(0, 0, FALSE, PASSIVE_LEVEL);
+        KeLeaveCriticalRegion();
+        CheckApcs(1, 0, FALSE, PASSIVE_LEVEL);
+        KeLeaveGuardedRegion();
+        CheckApcs(1, 1, TRUE, PASSIVE_LEVEL);
+        KeEnterCriticalRegion();
+        CheckApcs(0, 1, TRUE, PASSIVE_LEVEL);
+        KeEnterGuardedRegion();
+        CheckApcs(0, 0, FALSE, PASSIVE_LEVEL);
+    }
 
     /* manually disable APCs */
     Thread->KernelApcDisable = -1;
@@ -126,51 +129,58 @@
       KeLeaveCriticalRegion();
       CheckApcs(0, 0, TRUE, HIGH_LEVEL);
 
-      KeEnterGuardedRegion();
-        CheckApcs(0, -1, TRUE, HIGH_LEVEL);
-      KeLeaveGuardedRegion();
+      /* Ke*GuardedRegion assert at > APC_LEVEL */
+      if (!KmtIsCheckedBuild)
+      {
+          KeEnterGuardedRegion();
+            CheckApcs(0, -1, TRUE, HIGH_LEVEL);
+          KeLeaveGuardedRegion();
+      }
       CheckApcs(0, 0, TRUE, HIGH_LEVEL);
     KeLowerIrql(Irql);
     CheckApcs(0, 0, FALSE, PASSIVE_LEVEL);
 
-    KeRaiseIrql(HIGH_LEVEL, &Irql);
-    CheckApcs(0, 0, TRUE, HIGH_LEVEL);
-    KeEnterCriticalRegion();
-    CheckApcs(-1, 0, TRUE, HIGH_LEVEL);
-    KeEnterGuardedRegion();
-    CheckApcs(-1, -1, TRUE, HIGH_LEVEL);
-    KeLowerIrql(Irql);
-    CheckApcs(-1, -1, TRUE, PASSIVE_LEVEL);
-    KeLeaveCriticalRegion();
-    CheckApcs(0, -1, TRUE, PASSIVE_LEVEL);
-    KeLeaveGuardedRegion();
-    CheckApcs(0, 0, FALSE, PASSIVE_LEVEL);
+    if (!KmtIsCheckedBuild)
+    {
+        KeRaiseIrql(HIGH_LEVEL, &Irql);
+        CheckApcs(0, 0, TRUE, HIGH_LEVEL);
+        KeEnterCriticalRegion();
+        CheckApcs(-1, 0, TRUE, HIGH_LEVEL);
+        KeEnterGuardedRegion();
+        CheckApcs(-1, -1, TRUE, HIGH_LEVEL);
+        KeLowerIrql(Irql);
+        CheckApcs(-1, -1, TRUE, PASSIVE_LEVEL);
+        KeLeaveCriticalRegion();
+        CheckApcs(0, -1, TRUE, PASSIVE_LEVEL);
+        KeLeaveGuardedRegion();
+        CheckApcs(0, 0, FALSE, PASSIVE_LEVEL);
 
-    KeEnterGuardedRegion();
-    CheckApcs(0, -1, TRUE, PASSIVE_LEVEL);
-    KeRaiseIrql(HIGH_LEVEL, &Irql);
-    CheckApcs(0, -1, TRUE, HIGH_LEVEL);
-    KeEnterCriticalRegion();
-    CheckApcs(-1, -1, TRUE, HIGH_LEVEL);
-    KeLeaveGuardedRegion();
-    CheckApcs(-1, 0, TRUE, HIGH_LEVEL);
-    KeLowerIrql(Irql);
-    CheckApcs(-1, 0, FALSE, PASSIVE_LEVEL);
-    KeLeaveCriticalRegion();
-    CheckApcs(0, 0, FALSE, PASSIVE_LEVEL);
+        KeEnterGuardedRegion();
+        CheckApcs(0, -1, TRUE, PASSIVE_LEVEL);
+        KeRaiseIrql(HIGH_LEVEL, &Irql);
+        CheckApcs(0, -1, TRUE, HIGH_LEVEL);
+        KeEnterCriticalRegion();
+        CheckApcs(-1, -1, TRUE, HIGH_LEVEL);
+        KeLeaveGuardedRegion();
+        CheckApcs(-1, 0, TRUE, HIGH_LEVEL);
+        KeLowerIrql(Irql);
+        CheckApcs(-1, 0, FALSE, PASSIVE_LEVEL);
+        KeLeaveCriticalRegion();
+        CheckApcs(0, 0, FALSE, PASSIVE_LEVEL);
 
-    KeEnterCriticalRegion();
-    CheckApcs(-1, 0, FALSE, PASSIVE_LEVEL);
-    KeRaiseIrql(HIGH_LEVEL, &Irql);
-    CheckApcs(-1, 0, TRUE, HIGH_LEVEL);
-    KeEnterGuardedRegion();
-    CheckApcs(-1, -1, TRUE, HIGH_LEVEL);
-    KeLeaveCriticalRegion();
-    CheckApcs(0, -1, TRUE, HIGH_LEVEL);
-    KeLowerIrql(Irql);
-    CheckApcs(0, -1, TRUE, PASSIVE_LEVEL);
-    KeLeaveGuardedRegion();
-    CheckApcs(0, 0, FALSE, PASSIVE_LEVEL);
+        KeEnterCriticalRegion();
+        CheckApcs(-1, 0, FALSE, PASSIVE_LEVEL);
+        KeRaiseIrql(HIGH_LEVEL, &Irql);
+        CheckApcs(-1, 0, TRUE, HIGH_LEVEL);
+        KeEnterGuardedRegion();
+        CheckApcs(-1, -1, TRUE, HIGH_LEVEL);
+        KeLeaveCriticalRegion();
+        CheckApcs(0, -1, TRUE, HIGH_LEVEL);
+        KeLowerIrql(Irql);
+        CheckApcs(0, -1, TRUE, PASSIVE_LEVEL);
+        KeLeaveGuardedRegion();
+        CheckApcs(0, 0, FALSE, PASSIVE_LEVEL);
+    }
 
     KeEnterCriticalRegion();
     CheckApcs(-1, 0, FALSE, PASSIVE_LEVEL);


Reply via email to