FreeRTOS TAD plug-in Task list view empty

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

FreeRTOS TAD plug-in Task list view empty

3,558 Views
valentin_nechun
Contributor I

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.

6 Replies

2,918 Views
cescvaro
Contributor II

Hi all,

make sure that you have this define in your config file

#define configENABLE_BACKWARD_COMPATIBILITY            (0) /* this needs to be defined in order to be able to use the Freertos plugin to debug */

When I switched to MCUXpresso 11 I needed to define it to 0 in order to have the pluging to work again.

regards,

fv

0 Kudos

2,918 Views
ErichStyger
Senior Contributor V

Just to add:

configENABLE_BACKWARD_COMPATIBILITY

is only needed if using an old version of FreeRTOS.

2,918 Views
cescvaro
Contributor II

Thx for the clarification!

it happened that I updated MCUXpresso and FreeRTOS at the same time and task info was not displayed anymore.

0 Kudos

2,918 Views
deniscollis
Contributor V

I'm having the same issue with IDE 11.0.1.  The Task List view is correctly displayed with freertos_hello demo, and at first was displaying in my project.  It is no longer doing so, now that the project has 10 or so tasks running, and is using most of the available SRAM_UPPER.

If I exclude a few tasks in the compile, then the Task List view reappears.  Any ideas why?  I would assume that the plugin cannot, and does not, allocate resources on the MCU. 

Best,

Denis

0 Kudos

2,918 Views
deniscollis
Contributor V

:smileyhappy: Magically, everything's okay after updating to IDE 11.1.

0 Kudos

2,918 Views
danielchen
NXP TechSupport
NXP TechSupport

Hi Valetin:

I would suggest you run the freertos_hello demo on your side first. I works on my side.   I use IDE 10.2.1 with TAD 1.0.6. Can you see the task list on your side? 

Regards

Daniel

0 Kudos