Changeset 60624 in vbox
- Timestamp:
- Apr 21, 2016 1:16:47 PM (8 years ago)
- File:
-
- 1 edited
-
trunk/src/VBox/VMM/VMMR3/APIC.cpp (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/VMMR3/APIC.cpp
r60605 r60624 615 615 616 616 617 #ifdef DEBUG_ramshankar 618 /** 619 * Helper for dumping per-VCPU APIC state to the release logger. 620 * 621 * This is primarily concerned about the APIC state relevant for saved-states. 622 * 623 * @param pVCpu The cross context virtual CPU structure. 624 * @param pszPrefix A caller supplied prefix before dumping parts of the 625 * state. 626 */ 627 static void apicR3DumpState(PVMCPU pVCpu, const char *pszPrefix) 628 { 629 PCAPICCPU pApicCpu = VMCPU_TO_APICCPU(pVCpu); 630 631 /* The auxiliary state. */ 632 LogRel(("APIC%u: uApicBaseMsr = %#RX64\n", pVCpu->idCpu, pApicCpu->uApicBaseMsr)); 633 LogRel(("APIC%u: uEsrInternal = %#RX64\n", pVCpu->idCpu, pApicCpu->uEsrInternal)); 634 635 /* The timer. */ 636 LogRel(("APIC%u: %s APIC Timer:\n", pVCpu->idCpu)); 637 LogRel(("APIC%u: u64TimerInitial = %#RU64\n", pVCpu->idCpu, pApicCpu->u64TimerInitial)); 638 639 /* The PIBs. */ 640 LogRel(("APIC%u: %s APIC PIB:\n", pVCpu->idCpu, pszPrefix)); 641 LogRel(("%.*Rhxs\n", sizeof(APICPIB), pApicCpu->pvApicPibR3)); 642 LogRel(("APIC%u: %s APIC Level PIB:\n", pVCpu->idCpu, pszPrefix)); 643 LogRel(("%.*Rhxs\n", sizeof(APICPIB), &pApicCpu->ApicPibLevel)); 644 645 /* The APIC page. */ 646 LogRel(("APIC%u: %s APIC page\n:", pVCpu->idCpu, pszPrefix)); 647 LogRel(("%.*Rhxs\n", sizeof(XAPICPAGE), pApicCpu->pvApicPageR3)); 648 } 649 #endif 650 651 617 652 /** 618 653 * Worker for saving per-VM APIC data. … … 722 757 TMR3TimerSave(pApicCpu->pTimerR3, pSSM); 723 758 SSMR3PutU64(pSSM, pApicCpu->u64TimerInitial); 759 760 #ifdef DEBUG_ramshankar 761 apicR3DumpState(pVCpu, "Saved"); 762 #endif 724 763 } 725 764 … … 793 832 apicHintTimerFreq(pApicCpu, uInitialCount, uTimerShift); 794 833 } 834 835 #ifdef DEBUG_ramshankar 836 apicR3DumpState(pVCpu, "Loaded"); 837 #endif 795 838 } 796 839 else
Note:
See TracChangeset
for help on using the changeset viewer.

