Greetings! I have some trouble with TAD for FreeRTOS on MCUExpresso IDE ( v10.2.1 [Build 795] [2018-07-25] ).
I use FreeRTOS V10.1.1.
I see nothing in Task list view, but other views (Heap, queue, timer) and threads visualisation works fine.
I`ve see to console and found this:
Output of TAD:
14:43:19.498 INFO: [TadModel] DSF session ID 0 has started.
14:43:38.212 INFO: [TadState] TAD state changed: DEBUG_STARTED -> DEBUG_INIT_0 (SUSPENDED, USER_REQUEST)
14:43:39.476 INFO: [TadState] TAD state changed: DEBUG_INIT_0 -> DEBUG_INIT_1 (RESUMED, USER_REQUEST)
14:43:39.746 INFO: [TadState] TAD state changed: DEBUG_INIT_1 -> DEBUG_SUSPENDED (SUSPENDED, BREAKPOINT)
14:43:43.546 INFO: [TadState] TAD state changed: DEBUG_SUSPENDED -> DEBUG_RESUMED (RESUMED, USER_REQUEST)
14:43:46.906 INFO: [TadState] TAD state changed: DEBUG_RESUMED -> READY (SUSPENDED, SIGNAL)
14:43:47.46 INFO: [Benchmark] Loading data for "Heap Usage" has started.
14:43:48.275 ERROR: [TadFactory] Reading exception during: "readLongAtAddressSafely(0x100059e0, QueueDefinition.pcTail)"
14:43:49.278 ERROR: [TadFactory] Reading exception during: "readLongAtAddressSafely(0x100059e0, QueueDefinition.u.pcReadFrom)"
14:43:50.920 ERROR: [TaskFactory] Cannot read information from "pxReadyTasksLists[0]".
14:43:52.85 ERROR: [TaskFactory] Cannot read information from "pxReadyTasksLists[1]".
14:43:53.237 ERROR: [TaskFactory] Cannot read information from "pxReadyTasksLists[2]".
14:43:54.496 ERROR: [TaskFactory] Cannot read information from "xSuspendedTaskList".
14:43:54.615 INFO: [HeapFactory] Heap type (memory allocation scheme) has been identified from FreeRTOSDebugConfig structure (FreeRTOSDebugConfig[5]) as Heap type #4.
14:43:54.735 INFO: [Benchmark] Loading data for "Heap Usage" took 7689 ms.
14:43:56.248 INFO: [Benchmark] Loading data for "Timer List" has started.
14:43:56.294 INFO: [Benchmark] Loading data for "Timer List" took 46 ms.
14:43:58.90 INFO: [Benchmark] Loading data for "Queue List" has started.
14:43:58.90 INFO: [Benchmark] Loaded data for "Queue List" from cache.
14:43:59.964 INFO: [Benchmark] Loading data for "Task List" has started.
14:44:01.142 ERROR: [TaskFactory] Cannot read information from "pxReadyTasksLists[0]".
14:44:02.319 ERROR: [TaskFactory] Cannot read information from "pxReadyTasksLists[1]".
14:44:03.462 ERROR: [TaskFactory] Cannot read information from "pxReadyTasksLists[2]".
14:44:04.710 ERROR: [TaskFactory] Cannot read information from "xSuspendedTaskList".
14:44:04.768 INFO: [Benchmark] Loading data for "Task List" took 4804 ms.
And a part of output of GDB server:
443,709 273-data-evaluate-expression "(((struct tskTaskControlBlock *) 0x10000e3c)->xEventListItem.pvContainer)"
443,720 273^error,msg="There is no member named pvContainer."
So, problem that is list elem struct defenition in FreeRTOS 10 (list.h) has no member "pvContainer", but have "pxContainer":
struct xLIST_ITEM
{
listFIRST_LIST_ITEM_INTEGRITY_CHECK_VALUE
configLIST_VOLATILE TickType_t xItemValue;
struct xLIST_ITEM * configLIST_VOLATILE pxNext;
struct xLIST_ITEM * configLIST_VOLATILE pxPrevious;
void * pvOwner;
struct xLIST * configLIST_VOLATILE pxContainer;
listSECOND_LIST_ITEM_INTEGRITY_CHECK_VALUE
};
typedef struct xLIST_ITEM ListItem_t;
Is that a bug of TAD plug-in v1.0.6?
Best regards, Valentin Nechunaev.