Changeset 56470 in vbox for trunk/src/VBox
- Timestamp:
- Jun 17, 2015 8:50:35 AM (10 years ago)
- svn:sync-xref-src-repo-rev:
- 101087
- Location:
- trunk/src/VBox/Main
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Main/include/GuestImpl.h
r55644 r56470 95 95 HRESULT i_setStatistic(ULONG aCpuId, GUESTSTATTYPE enmType, ULONG aVal); 96 96 BOOL i_isPageFusionEnabled(); 97 void i_setCpuCount(uint32_t aCpus) { mCpus = aCpus; } 97 98 static HRESULT i_setErrorStatic(HRESULT aResultCode, const Utf8Str &aText) 98 99 { … … 209 210 uint64_t mNetStatLastTs; 210 211 ULONG mCurrentGuestStat[GUESTSTATTYPE_MAX]; 212 ULONG mCurrentGuestCpuUserStat[VMM_MAX_CPU_COUNT]; 213 ULONG mCurrentGuestCpuKernelStat[VMM_MAX_CPU_COUNT]; 214 ULONG mCurrentGuestCpuIdleStat[VMM_MAX_CPU_COUNT]; 211 215 ULONG mVmValidStats; 212 216 BOOL mCollectVMMStats; 213 217 BOOL mfPageFusionEnabled; 218 uint32_t mCpus; 214 219 215 220 const ComObjPtr<Console> mParent; -
trunk/src/VBox/Main/src-client/ConsoleImpl.cpp
r56283 r56470 496 496 rc = mGuest->init(this); 497 497 AssertComRCReturnRC(rc); 498 499 ULONG cCpus = 1; 500 rc = mMachine->COMGETTER(CPUCount)(&cCpus); 501 mGuest->i_setCpuCount(cCpus); 498 502 499 503 unconst(mKeyboard).createObject(); -
trunk/src/VBox/Main/src-client/GuestImpl.cpp
r56030 r56470 104 104 mCurrentGuestStat[i] = 0; 105 105 mVmValidStats = pm::VMSTATMASK_NONE; 106 RT_ZERO(mCurrentGuestCpuUserStat); 107 RT_ZERO(mCurrentGuestCpuKernelStat); 108 RT_ZERO(mCurrentGuestCpuIdleStat); 106 109 107 110 mMagic = GUEST_MAGIC; … … 113 116 if (SUCCEEDED(hr)) 114 117 hr = mEventSource->init(); 118 119 mCpus = 1; 115 120 116 121 #ifdef VBOX_WITH_DRAG_AND_DROP … … 702 707 if (enmType >= GUESTSTATTYPE_MAX) 703 708 return E_INVALIDARG; 709 710 if (aCpuId < VMM_MAX_CPU_COUNT) 711 { 712 ULONG *paCpuStats; 713 switch (enmType) 714 { 715 case GUESTSTATTYPE_CPUUSER: paCpuStats = mCurrentGuestCpuUserStat; break; 716 case GUESTSTATTYPE_CPUKERNEL: paCpuStats = mCurrentGuestCpuKernelStat; break; 717 case GUESTSTATTYPE_CPUIDLE: paCpuStats = mCurrentGuestCpuIdleStat; break; 718 default: paCpuStats = NULL; break; 719 } 720 if (paCpuStats) 721 { 722 paCpuStats[aCpuId] = aVal; 723 aVal = 0; 724 for (uint32_t i = 0; i < mCpus && i < VMM_MAX_CPU_COUNT; i++) 725 aVal += paCpuStats[i]; 726 aVal /= mCpus; 727 } 728 } 704 729 705 730 mCurrentGuestStat[enmType] = aVal; … … 1080 1105 /** @todo Add VMMDEV_GUEST_SUPPORTS_GUEST_HOST_WINDOW_MAPPING */ 1081 1106 } 1082
Note:
See TracChangeset
for help on using the changeset viewer.