VirtualBox

Changeset 23367 in vbox


Ignore:
Timestamp:
Sep 28, 2009 12:34:40 PM (16 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
52891
Message:

Experiment with HalRequestIpi

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Runtime/r0drv/nt/mp-r0drv-nt.cpp

    r23181 r23367  
    349349
    350350
     351extern "C" HalRequestIpi(KAFFINITY TargetSet);
     352
    351353RTDECL(int) RTMpPokeCpu(RTCPUID idCpu)
    352354{
     
    356358              : VERR_CPU_OFFLINE;
    357359
     360#if 1 /* experiment!! */
     361    HalRequestIpi(1 << idCpu);
     362    return VINF_SUCCESS;
     363#else
    358364    if (!fPokeDPCsInitialized)
    359365    {
     
    373379    KeRaiseIrql(DISPATCH_LEVEL, &oldIrql);
    374380
     381    KeSetImportanceDpc(&aPokeDpcs[idCpu], HighImportance);
     382    KeSetTargetProcessorDpc(&aPokeDpcs[idCpu], (int)idCpu);
     383
    375384    /* Assuming here that high importance DPCs will be delivered immediately; or at least an IPI will be sent immediately.
    376385     * Todo: verify!
     
    380389    KeLowerIrql(oldIrql);
    381390    return (bRet == TRUE) ? VINF_SUCCESS : VERR_ACCESS_DENIED /* already queued */;
     391#endif
    382392}
    383393
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