Changeset 56665 in vbox for trunk/src/VBox/VMM/VMMR0
- Timestamp:
- Jun 28, 2015 3:28:49 PM (9 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/VMMR0/HMSVMR0.cpp
r56664 r56665 4807 4807 if (IoExitInfo.n.u1Type == SVM_IOIO_WRITE) 4808 4808 { 4809 if (pVM->hm.s.svm.u32Features & AMD_CPUID_SVM_FEATURE_EDX_NRIP_SAVE) 4809 /* Don't know exactly how to detect whether u3SEG is valid, currently 4810 only enabling it for Bulldozer and later with NRIP. OS/2 broke on 4811 2384 Opterons when only checking NRIP. */ 4812 if ( (pVM->hm.s.svm.u32Features & AMD_CPUID_SVM_FEATURE_EDX_NRIP_SAVE) 4813 && pVM->cpum.ro.GuestFeatures.enmMicroarch >= kCpumMicroarch_AMD_15h_First) 4814 { 4815 AssertMsg(IoExitInfo.n.u3SEG == X86_SREG_DS || cbInstr > 1 + IoExitInfo.n.u1REP, 4816 ("u32Seg=%d cbInstr=%d u1REP=%d", IoExitInfo.n.u3SEG, cbInstr, IoExitInfo.n.u1REP)); 4810 4817 rcStrict = IEMExecStringIoWrite(pVCpu, cbValue, enmAddrMode, IoExitInfo.n.u1REP, (uint8_t)cbInstr, 4811 4818 IoExitInfo.n.u3SEG); 4819 } 4812 4820 else 4813 4821 rcStrict = IEMExecOne(pVCpu);
Note:
See TracChangeset
for help on using the changeset viewer.