From 0950acb3372d90f21d384600dcd9d9250f87421c Mon Sep 17 00:00:00 2001 From: Brad King Date: Mon, 20 Nov 2023 20:11:44 -0500 Subject: cmCTestMultiProcessHandler: Manage concurrency slots with other resources --- Source/CTest/cmCTestMultiProcessHandler.cxx | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/Source/CTest/cmCTestMultiProcessHandler.cxx b/Source/CTest/cmCTestMultiProcessHandler.cxx index d9da2d8..3f1e019 100644 --- a/Source/CTest/cmCTestMultiProcessHandler.cxx +++ b/Source/CTest/cmCTestMultiProcessHandler.cxx @@ -170,7 +170,6 @@ void cmCTestMultiProcessHandler::StartTestProcess(int test) "test " << test << "\n", this->Quiet); // now remove the test itself this->ErasePendingTest(test); - this->RunningCount += this->GetProcessorsUsed(test); auto testRun = cm::make_unique(*this, test); @@ -398,6 +397,8 @@ void cmCTestMultiProcessHandler::SetStopTimePassed() void cmCTestMultiProcessHandler::LockResources(int index) { + this->RunningCount += this->GetProcessorsUsed(index); + auto* properties = this->Properties[index]; this->ProjectResourcesLocked.insert(properties->ProjectResources.begin(), @@ -437,6 +438,8 @@ void cmCTestMultiProcessHandler::UnlockResources(int index) if (properties->RunSerial) { this->SerialTestRunning = false; } + + this->RunningCount -= this->GetProcessorsUsed(index); } void cmCTestMultiProcessHandler::ErasePendingTest(int test) @@ -691,7 +694,6 @@ void cmCTestMultiProcessHandler::FinishTestProcess( this->WriteCheckpoint(test); this->DeallocateResources(test); this->UnlockResources(test); - this->RunningCount -= this->GetProcessorsUsed(test); runner.reset(); -- cgit v0.12