freertos: Fix bug with xTaskResumeAll() not resuming all tasks

Previously if multiple tasks had been added to xPendingReadyList for the CPU, only the first one was resumed.

Includes a test case for resuming multiple (pending) tasks on xTaskResumeAll().

Document the limitation that while scheduler is suspended on one CPU, it can't wake tasks on either CPU.
This commit is contained in:
Angus Gratton
2017-09-28 10:58:32 +10:00
committed by Angus Gratton
parent 3106ca1c1e
commit f2f9170abc
4 changed files with 294 additions and 160 deletions

View File

@@ -2177,7 +2177,6 @@ BaseType_t xAlreadyYielded = pdFALSE;
{
/* We can schedule the awoken task on this CPU. */
xYieldPending[xPortGetCoreID()] = pdTRUE;
break;
}
else
{