diff --git a/bochs/CHANGES b/bochs/CHANGES index 92770b1a4..728314bbd 100644 --- a/bochs/CHANGES +++ b/bochs/CHANGES @@ -39,6 +39,8 @@ Changes after 2.5.1 release: - Added new parameter 'rtc_sync' for the 'clock' option. If this option is enabled together with the realtime synchronization, the RTC runs at realtime speed. + - Allow larger CPU 'quantum' values when emulating SMP systems for speed + (quantum values up to 32 are allowed now). - I/O Devices - Networking @@ -106,6 +108,7 @@ Changes after 2.5.1 release: [3486555] Fix critical stack leak in Win32 GUI by Carlo Bramini - these S.F. bugs were closed/fixed + [3550175] Crash when saving snapshot to directory instead of file [3548109] VMX State Not Restored After Entering SMM on 32-bit Systems [3548108] VMEXIT Instruction Length Not Always Getting Updated [3545941] Typo in preprocessor symbol diff --git a/bochs/config.cc b/bochs/config.cc index 8f19190c1..2915733f8 100644 --- a/bochs/config.cc +++ b/bochs/config.cc @@ -389,7 +389,7 @@ void bx_init_options() "quantum", "Quantum ticks in SMP simulation", "Maximum amount of instructions allowed to execute before returning control to another CPU.", BX_SMP_QUANTUM_MIN, BX_SMP_QUANTUM_MAX, - 5); + 16); #endif new bx_param_bool_c(cpu_param, "reset_on_triple_fault", "Enable CPU reset on triple fault", diff --git a/bochs/config.h.in b/bochs/config.h.in index d47505a18..7b3876353 100644 --- a/bochs/config.h.in +++ b/bochs/config.h.in @@ -151,7 +151,7 @@ // how many instructions each CPU could execute in one // shot (one cpu_loop call) #define BX_SMP_QUANTUM_MIN 1 -#define BX_SMP_QUANTUM_MAX 16 +#define BX_SMP_QUANTUM_MAX 32 // Use Static Member Funtions to eliminate 'this' pointer passing // If you want the efficiency of 'C', you can make all the diff --git a/bochs/cpu/proc_ctrl.cc b/bochs/cpu/proc_ctrl.cc index bdf620cc5..43cc72fec 100644 --- a/bochs/cpu/proc_ctrl.cc +++ b/bochs/cpu/proc_ctrl.cc @@ -151,7 +151,7 @@ BX_INSF_TYPE BX_CPP_AttrRegparmN(1) BX_CPU_C::HLT(bxInstruction_c *i) #if BX_SUPPORT_VMX if (BX_CPU_THIS_PTR in_vmx_guest) { if (VMEXIT(VMX_VM_EXEC_CTRL2_HLT_VMEXIT)) { - BX_ERROR(("VMEXIT: HLT")); + BX_DEBUG(("VMEXIT: HLT")); VMexit(VMX_VMEXIT_HLT, 0); } }