base.cc (12128:75e1a5bed42e) | base.cc (12154:9a9bc3c1b788) |
---|---|
1/* 2 * Copyright (c) 2012, 2015 ARM Limited 3 * All rights reserved 4 * 5 * The license below extends only to copyright in the software and shall 6 * not be construed as granting a license to any other intellectual 7 * property including but not limited to intellectual property relating 8 * to a hardware implementation of the functionality of the software --- 344 unchanged lines hidden (view full) --- 353 354DrainState 355BaseKvmCPU::drain() 356{ 357 if (switchedOut()) 358 return DrainState::Drained; 359 360 DPRINTF(Drain, "BaseKvmCPU::drain\n"); | 1/* 2 * Copyright (c) 2012, 2015 ARM Limited 3 * All rights reserved 4 * 5 * The license below extends only to copyright in the software and shall 6 * not be construed as granting a license to any other intellectual 7 * property including but not limited to intellectual property relating 8 * to a hardware implementation of the functionality of the software --- 344 unchanged lines hidden (view full) --- 353 354DrainState 355BaseKvmCPU::drain() 356{ 357 if (switchedOut()) 358 return DrainState::Drained; 359 360 DPRINTF(Drain, "BaseKvmCPU::drain\n"); |
361 362 // The event queue won't be locked when calling drain since that's 363 // not done from an event. Lock the event queue here to make sure 364 // that scoped migrations continue to work if we need to 365 // synchronize the thread context. 366 std::lock_guard<EventQueue> lock(*this->eventQueue()); 367 |
|
361 switch (_status) { 362 case Running: 363 // The base KVM code is normally ready when it is in the 364 // Running state, but the architecture specific code might be 365 // of a different opinion. This may happen when the CPU been 366 // notified of an event that hasn't been accepted by the vCPU 367 // yet. 368 if (!archIsDrained()) --- 1025 unchanged lines hidden --- | 368 switch (_status) { 369 case Running: 370 // The base KVM code is normally ready when it is in the 371 // Running state, but the architecture specific code might be 372 // of a different opinion. This may happen when the CPU been 373 // notified of an event that hasn't been accepted by the vCPU 374 // yet. 375 if (!archIsDrained()) --- 1025 unchanged lines hidden --- |