This is because you are calling interrupt safe FreeRTOS API functions from ISRs that have logical priority higher than configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY
. One reason for that assert should be the following lines in your code:
/* ETH interrupt Init */
HAL_NVIC_SetPriority(ETH_IRQn, 0, 0);
HAL_NVIC_EnableIRQ(ETH_IRQn);
Which means ethernet interrupts are run at the highest priority.
Try lowering it to configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY
or something logically lower (numerically higher).
For example:
HAL_NVIC_SetPriority(ETH_IRQn, 5, 0);
HAL_NVIC_EnableIRQ(ETH_IRQn);