VirtualBox

Changeset 47903 in vbox


Ignore:
Timestamp:
Aug 20, 2013 12:42:36 PM (12 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
88208
Message:

tstR0ThreadPreemption: Stress test preemption & resume with more iterations of thread-context hooks per test.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Runtime/testcase/tstR0ThreadPreemptionDriver.cpp

    r47206 r47903  
    203203
    204204    RTTestSub(hTest, "Pending Preemption");
    205 RTThreadSleep(250); /** @todo fix GIP initialization? */
     205    RTThreadSleep(250); /** @todo fix GIP initialization? */
    206206    for (int i = 0; ; i++)
    207207    {
     
    250250     */
    251251    RTTestSub(hTest, "RTThreadCtxHooks");
    252     Req.Hdr.u32Magic = SUPR0SERVICEREQHDR_MAGIC;
    253     Req.Hdr.cbReq = sizeof(Req);
    254     Req.szMsg[0] = '\0';
    255     RTTESTI_CHECK_RC(rc = SUPR3CallR0Service("tstR0ThreadPreemption", sizeof("tstR0ThreadPreemption") - 1,
    256                                              TSTR0THREADPREEMPTION_CTXHOOKS, 0, &Req.Hdr), VINF_SUCCESS);
    257     if (RT_FAILURE(rc))
    258         return RTTestSummaryAndDestroy(hTest);
    259     if (Req.szMsg[0] == '!')
    260         RTTestIFailed("%s", &Req.szMsg[1]);
    261     else if (Req.szMsg[0])
    262         RTTestIPrintf(RTTESTLVL_ALWAYS, "%s", Req.szMsg);
     252    for (unsigned i = 0; i < 50; i++)
     253    {
     254        Req.Hdr.u32Magic = SUPR0SERVICEREQHDR_MAGIC;
     255        Req.Hdr.cbReq = sizeof(Req);
     256        Req.szMsg[0] = '\0';
     257        RTTESTI_CHECK_RC(rc = SUPR3CallR0Service("tstR0ThreadPreemption", sizeof("tstR0ThreadPreemption") - 1,
     258                                                 TSTR0THREADPREEMPTION_CTXHOOKS, 0, &Req.Hdr), VINF_SUCCESS);
     259        if (RT_FAILURE(rc))
     260            return RTTestSummaryAndDestroy(hTest);
     261        if (Req.szMsg[0] == '!')
     262            RTTestIFailed("%s", &Req.szMsg[1]);
     263        else if (Req.szMsg[0])
     264            RTTestIPrintf(RTTESTLVL_ALWAYS, "%s", Req.szMsg);
     265        if (!(i % 10))
     266            RTTestIPrintf(RTTESTLVL_ALWAYS, "RTThreadCtxHooks passed %u iteration(s)\n", i);
     267    }
    263268
    264269    /*
Note: See TracChangeset for help on using the changeset viewer.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette