 A task calls os_dly_wait() then never be scheduled again bruce yu We use RTX 3.0 for ST STR71x. Now we find a strange thing: the Fault Poll task TCB is lost from os_dly list , it should stay in os_dly list because its task state is WAIT_DLY state and Its stack shows it called delay function. Now Fault Poll task will not be scheduled anymore(always hanging in WAIT_DLY state ). Following is the memory dump and sketch map showing details: FAULT_PollTask TCB: 0000a3b8 - 00F00300 00000000 00000000 00000000 0000a3c8 - 0000A418 00000000 00000000 00000000 // backwards pointer point to LMMPARCNET_Task TCB 0000a3d8 - 10000001 0000C268 0000B2E8 40015118 LMMPARCNET_Task TCB 0000a418 - 00040300 00000000 00000000 0000A328 //delay pointer point to other TCB , not LMMPARCNET_Task TCB 0000a428 - 0000DFC8 00000009 00000000 00000000 //backwords point pointer to os_dly(delay list head) 0000a438 - 0C000001 00007E90 00007318 40029A00 Os_dly Head We do not know why , maybe a bug in RTX kernel or an invalid write to the TCB? |