Пока не дошёл до списка на пробуждение ядра. Смотрел лишь на
указатель на задачу приёмника потока в параметрах самого потока. И
оно затирается в ноль после постановки сообщения в очередь, на
этапе формирования уведомления. Получается, что уведомление формируется и, так как уведомление пробуждающее задачу приёмника уже подано, задача убирается из параметров потока. И это может быть нормально - функция xStreamBufferReceive() впишет задачу приёмника в этот параметр потока снова, когда обнаружит, что данных в потоке больше нет.
Проблема в том, что при формировании уведомления, не выполняется возобновление задачи, находящейся в suspended.
Подробнее смотрите по ссылке - кладу результаты опытов туда:
https://forums.freertos.org/t/xstreambufferreceive-portmax-delay-task-moved-to-suspended-and-never-wakes-on-data/23723