xSemaphoreGive / xSemaphoreTake and task lifecycle

Hi, Ive got the following setup: taskA with prioritytskIDLEPRIORITY + 1 taskB with priority tskIDLEPRIORITY + 2 taskB enters a sync point by a call to xSemaphoreTake. On the occurence of some event at a later point in time taskA releases taskB by calling xSemaphoreGive. The release does work perfectly, taskB gets woken up and is executed immediatly and then goes to sleep again using vTaskDelayUntil. However for some reason taskA who called xSemaphoreGive does not return anymore, only at some later point, (after taskB was running around 1060 times- it is a cyclic task using vTaskDelayUntil for sleep). Is this an explainable behaviour? If yes what do I need to do in order to get taskA returning from xSemaphoreTake after taskB first enters vTaskDelayUntil function? If you need more info let me know. Any input on this issue is very much appreciated. Thanks in advance, Steve

xSemaphoreGive / xSemaphoreTake and task lifecycle

Hi again, ok sorry but I found my problem. The problem was that the init wake time for the parameter of vTaskDelayUntil, was to far in the past, since I initialized the time before the semaphore was taken, this lead to wrong (to fast) cycle times of the first several calls to vTaskDelayUntil, causing it returning much to early, consequently taskB always wanted to run preventing taskA to resume. So problem is solved. Thanks again, Steve