kvm, x86: Adding support for SE mode execution
[gem5.git] / src / sim / simulate.cc
index b60b8a7834d6e60248d636dffb6efecdccebfa7a..426c3e662b0cde4ae841c94cc27f507187af2a6b 100644 (file)
@@ -198,6 +198,9 @@ doSimLoop(EventQueue *eventq)
         }
 
         if (async_event && testAndClearAsyncEvent()) {
+            // Take the event queue lock in case any of the service
+            // routines want to schedule new events.
+            std::lock_guard<EventQueue> lock(*eventq);
             async_event = false;
             if (async_statdump || async_statreset) {
                 Stats::schedStatEvent(async_statdump, async_statreset);