- Timestamp:
- Dec 5, 2014 1:07:30 PM (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/HostDrivers/Support/SUPDrv.c
r53458 r53459 187 187 DECLEXPORT(PSUPGLOBALINFOPAGE) g_pSUPGlobalInfoPage = NULL; 188 188 189 /** @name r=bird: Stuff that should be SUPDRVDEVEXT members. 190 * @todo Move this ASAP. */ 189 191 /** 190 192 * The TSC delta synchronization struct. rounded to cache line size. … … 218 220 * CPUs. */ 219 221 static bool g_fOsTscDeltasInSync; 222 /** @} */ 220 223 221 224 /** … … 6061 6064 /* 6062 6065 * Synchronize with the host OS clock tick before reading the TSC. 6063 * Especially important on Windowswhere the granularity is terrible.6066 * Especially important on older Windows version where the granularity is terrible. 6064 6067 */ 6065 6068 u64NanoTsBefore = RTTimeSystemNanoTS(); … … 6170 6173 Assert(pGip->u32Mode == SUPGIPMODE_INVARIANT_TSC); 6171 6174 6175 #if !defined(RT_OS_OS2) /* PORTME: Disable if timers are called from clock interrupt handler or with interrupts disabled. */ 6172 6176 u64NanoTS = RTTimeSystemNanoTS(); 6173 6177 while (RTTimeSystemNanoTS() == u64NanoTS) 6174 6178 ASMNopPause(); 6179 #endif 6175 6180 uFlags = ASMIntDisableFlags(); 6176 6181 idApic = ASMGetApicId(); … … 6528 6533 PSUPGLOBALINFOPAGE pGip = pDevExt->pGip; 6529 6534 6530 /*6531 * Synchronize with the host OS clock tick before reading the TSC.6532 * Especially important on Windows where the granularity is terrible.6533 */6534 u64NanoTS = RTTimeSystemNanoTS();6535 while (u64NanoTS == RTTimeSystemNanoTS())6536 ASMNopPause();6537 6538 6535 uFlags = ASMIntDisableFlags(); /* No interruptions please (real problem on S10). */ 6539 6536 u64TSC = ASMReadTSC();
Note:
See TracChangeset
for help on using the changeset viewer.