The drain refactor patches introduced a couple of bugs in the way
Minor handles draining. This patch fixes an incorrect assert and a
case of infinite recursion when the CPU signals drain done.
MinorCPU::signalDrainDone()
{
DPRINTF(Drain, "MinorCPU drain done\n");
- signalDrainDone();
+ Drainable::signalDrainDone();
}
void
MinorCPU::drainResume()
{
- assert(drainState() == DrainState::Drained);
-
if (switchedOut()) {
DPRINTF(Drain, "drainResume while switched out. Ignoring\n");
return;