VirtualBox

儲存庫 vbox 的更動 60523


忽略:
時間撮記:
2016-4-15 下午02:58:58 (9 年 以前)
作者:
vboxsync
訊息:

VMM/APIC: profiling fix, logging.

檔案:
修改 1 筆資料

圖例:

未更動
新增
刪除
  • trunk/src/VBox/VMM/VMMAll/APICAll.cpp

    r60516 r60523  
    23422342    STAM_COUNTER_INC(&pVCpu->apic.s.CTX_SUFF(StatMmioWrite));
    23432343
    2344     LogRel(("APIC%u: APICWriteMmio: offReg=%#RX16 uValue=%#RX32\n", pVCpu->idCpu, offReg, uValue));
     2344    Log4(("APIC%u: APICWriteMmio: offReg=%#RX16 uValue=%#RX32\n", pVCpu->idCpu, offReg, uValue));
    23452345
    23462346    int rc = VBOXSTRICTRC_VAL(apicWriteRegister(pApicDev, pVCpu, offReg, uValue));
     
    24072407        if (enmTriggerMode == XAPICTRIGGERMODE_EDGE)
    24082408        {
    2409             Assert(CTX_SUFF(pApicCpu->pvApicPib));
    2410             apicSetVectorInPib(CTX_SUFF(pApicCpu->pvApicPib), uVector);
    2411             bool const fAlreadySet = apicSetNotificationBitInPib(CTX_SUFF(pApicCpu->pvApicPib));
    2412             if (!fAlreadySet)
    2413             {
    2414                 if (pApic->fPostedIntrsEnabled)
    2415                 { /** @todo posted-interrupt call to hardware */ }
    2416                 else
     2409            if (pApic->fPostedIntrsEnabled)
     2410            { /** @todo posted-interrupt call to hardware */ }
     2411            else
     2412            {
     2413                Assert(CTX_SUFF(pApicCpu->pvApicPib));
     2414                apicSetVectorInPib(CTX_SUFF(pApicCpu->pvApicPib), uVector);
     2415                bool const fAlreadySet = apicSetNotificationBitInPib(CTX_SUFF(pApicCpu->pvApicPib));
     2416                if (!fAlreadySet)
    24172417                    APICSetInterruptFF(pVCpu, PDMAPICIRQ_HARDWARE);
    24182418            }
     
    26122612            if (uFragment)
    26132613            {
    2614                 apicOrVectorsToReg(&pXApicPage->irr,  i,  uFragment);
    2615                 apicAndVectorsToReg(&pXApicPage->tmr, i, ~uFragment);
     2614                pXApicPage->irr.u[i].u32Reg |=  uFragment;
     2615                pXApicPage->tmr.u[i].u32Reg &= ~uFragment;
    26162616            }
    26172617        }
     
    26312631            if (uFragment)
    26322632            {
    2633                 apicOrVectorsToReg(&pXApicPage->irr, i, uFragment);
    2634                 apicOrVectorsToReg(&pXApicPage->tmr, i, uFragment);
     2633                pXApicPage->irr.u[i].u32Reg |= uFragment;
     2634                pXApicPage->tmr.u[i].u32Reg |= uFragment;
    26352635            }
    26362636        }
注意: 瀏覽 TracChangeset 來幫助您使用更動檢視器

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