Changeset 11488 in vbox
- Timestamp:
- Aug 19, 2008 2:24:46 PM (17 years ago)
- svn:sync-xref-src-repo-rev:
- 34985
- Location:
- trunk/src/VBox/VMM
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/VMMAll/EMAll.cpp
r11453 r11488 1365 1365 else 1366 1366 { 1367 int offIncrement = pRegFrame->eflags.Bits.u1DF ? -(signed)cbSize : (signed)cbSize; 1368 1369 if (!cTransfers) 1370 return VINF_SUCCESS; 1371 1367 1372 /* Access verification first; we currently can't recover properly from traps inside this instruction */ 1368 rc = PGMVerifyAccess(pVM, GCDest , cTransfers * cbSize, X86_PTE_RW | X86_PTE_US);1373 rc = PGMVerifyAccess(pVM, GCDest - (offIncrement > 0) ? 0 : ((cTransfers-1) * cbSize), cTransfers * cbSize, X86_PTE_RW | X86_PTE_US); 1369 1374 if (rc != VINF_SUCCESS) 1370 1375 { … … 1384 1389 1385 1390 Assert(rc == VINF_SUCCESS); 1386 GCOffset += cbSize;1387 GCDest += cbSize;1391 GCOffset += offIncrement; 1392 GCDest += offIncrement; 1388 1393 cTransfers--; 1389 1394 } -
trunk/src/VBox/VMM/VMMR0/HWVMXR0.cpp
r11398 r11488 1186 1186 /* Two options here: 1187 1187 * - external interrupt pending, but masked by the TPR value. 1188 * -> CR8 updates that lower the TPR value to below the currentvalue should cause an exit1188 * -> a CR8 update that lower the current TPR value should cause an exit 1189 1189 * - no pending interrupts 1190 1190 * -> We don't need to be explicitely notified. There are enough world switches for detecting pending interrupts.
Note:
See TracChangeset
for help on using the changeset viewer.