cancel
Showing results for 
Search instead for 
Did you mean: 

RTOS Kernel Awareness don't work

TWagn.2
Associate II

Hello,

I’m trying to use the RTOS Kernel Awareness at my FreeRTOS, Makefile Project,

but the ROTS Proxy throws following errors:

STMicroelectronics RTOS Proxy. Version 0.14.0
Copyright (c) 2023, STMicroelectronics. All rights reserved.

Loading RTOS driver... FreeRTOS
Connecting to GDB server 127.0.0.1 on port 61234 ... Connected
Listen for GDB connection on port: 60000 ... Connected
Data structure member error: xLIST_ITEM
Data structure member error: xLIST_ITEM
Data structure member error: xLIST_ITEM
Data structure member error: xLIST_ITEM
Data structure member error: xLIST_ITEM
Data structure member error: xLIST
Data structure member error: xLIST
Data structure member error: xLIST
Data structure member error: xMINI_LIST_ITEM
Data structure member error: xMINI_LIST_ITEM
Data structure member error: xMINI_LIST_ITEM
Data structure member error: tskTaskControlBlock
Data structure member error: tskTaskControlBlock
Data structure member error: tskTaskControlBlock
Data structure member error: tskTaskControlBlock
Data structure member error: tskTaskControlBlock
Data structure member error: tskTaskControlBlock
Data structure member error: tskTaskControlBlock
Data structure member error: tskTaskControlBlock
Data structure member error: tskTaskControlBlock
Data structure member error: tskTaskControlBlock
Data structure member error: tskTaskControlBlock
Data structure member error: tskTaskControlBlock
Data structure member error: tskTaskControlBlock
Data structure member error: tskTaskControlBlock
Data structure member error: xLIST_ITEM
Data structure member error: xLIST_ITEM
Data structure member error: xLIST_ITEM
Data structure member error: xLIST_ITEM
Data structure member error: xLIST_ITEM
Data structure member error: xLIST
Data structure member error: xLIST
Data structure member error: xLIST
Data structure member error: xMINI_LIST_ITEM
Data structure member error: xMINI_LIST_ITEM
Data structure member error: xMINI_LIST_ITEM
Data structure member error: tskTaskControlBlock
Data structure member error: tskTaskControlBlock
Data structure member error: tskTaskControlBlock
Data structure member error: tskTaskControlBlock
Data structure member error: tskTaskControlBlock
Data structure member error: tskTaskControlBlock
Data structure member error: tskTaskControlBlock
Data structure member error: tskTaskControlBlock
Data structure member error: tskTaskControlBlock
Data structure member error: tskTaskControlBlock
Data structure member error: tskTaskControlBlock
Data structure member error: tskTaskControlBlock
Data structure member error: tskTaskControlBlock
Data structure member error: tskTaskControlBlock
Data structure member error: xLIST_ITEM
Data structure member error: xLIST_ITEM
Data structure member error: xLIST_ITEM
Data structure member error: xLIST_ITEM
Data structure member error: xLIST_ITEM
Data structure member error: xLIST
Data structure member error: xLIST
Data structure member error: xLIST
Data structure member error: xMINI_LIST_ITEM
Data structure member error: xMINI_LIST_ITEM
Data structure member error: xMINI_LIST_ITEM
Data structure member error: tskTaskControlBlock
Data structure member error: tskTaskControlBlock
Data structure member error: tskTaskControlBlock
Data structure member error: tskTaskControlBlock
Data structure member error: tskTaskControlBlock
Data structure member error: tskTaskControlBlock
Data structure member error: tskTaskControlBlock
Data structure member error: tskTaskControlBlock
Data structure member error: tskTaskControlBlock
Data structure member error: tskTaskControlBlock
Data structure member error: tskTaskControlBlock
Data structure member error: tskTaskControlBlock
Data structure member error: tskTaskControlBlock
Data structure member error: tskTaskControlBlock
Missing data structure member: xList.uxNumberOfItems
Missing data structure member: xList.xListEnd
Unsupported xList structure
Update threads. Failed collecting threads.

 the view "FreeRTOS Task List" is shown and correct.

I use the FreeRTOS Kernel V10.2.1

at an another Project with FreeRTOS Kernel V10.3.1 I have the same problems.

The Proxy also generates a .proxy_cache file in the directory of the elf file.

What configuration am I missing?

What information could help to find the problem?

 

6 REPLIES 6
Sarra.S
ST Employee

Hello @TWagn.2

This can happen if the RTOS Proxy is not compatible with the version of FreeRTOS you are using, or if the FreeRTOS configuration is not what the Proxy expects, please check: How to enable FreeRTOS™ Run Time and Stack Usage view

 

 

To give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.

shortyHK
Associate II

Hi TWagn.2 and Sarra.S,

have you found a solution to your problem? I'll have the same situation:

 

TMicroelectronics RTOS Proxy. Version 0.12.0
Copyright (c) 2022, STMicroelectronics. All rights reserved.

Loading RTOS driver... FreeRTOS
Connecting to GDB server 127.0.0.1 on port 61234 ... Connected
Listen for GDB connection on port: 60000 ... Connected
Data structure member error: xLIST_ITEM
Data structure member error: xLIST_ITEM
Data structure member error: xLIST_ITEM
Data structure member error: xLIST_ITEM
Data structure member error: xLIST_ITEM
Data structure member error: xLIST
Data structure member error: xLIST
Data structure member error: xLIST
Data structure member error: xMINI_LIST_ITEM
Data structure member error: xMINI_LIST_ITEM
Data structure member error: xMINI_LIST_ITEM
Data structure member error: tskTaskControlBlock
Data structure member error: tskTaskControlBlock
Data structure member error: tskTaskControlBlock
Data structure member error: tskTaskControlBlock
Data structure member error: tskTaskControlBlock
Data structure member error: tskTaskControlBlock
Data structure member error: tskTaskControlBlock
Data structure member error: tskTaskControlBlock
Data structure member error: tskTaskControlBlock
Data structure member error: tskTaskControlBlock
Data structure member error: tskTaskControlBlock
Data structure member error: tskTaskControlBlock
Data structure member error: tskTaskControlBlock
Data structure member error: tskTaskControlBlock
Data structure member error: tskTaskControlBlock
Data structure member error: tskTaskControlBlock
Data structure member error: tskTaskControlBlock
Missing data structure member: xList.uxNumberOfItems
Missing data structure member: xList.xListEnd
Unsupported xList structure
Update threads. Failed collecting threads.

 

 

I use freeRTOS V10.3.1 from STM32Cube_FW_H7_V1.11.0 in a make project

and STM32CubeIDE  'en.st-stm32cubeide_1.11.2'.

I can also see a correct working view "FreeRTOS Task List".

I also checked How to enable FreeRTOS™ Run Time and Stack Usage view multiple times and dm00629856-stm32cubeide-user-guide-stmicroelectronics.pdf aswell.

What I can't find is a compatibility list between proxy and freeRTOS.

 

Regards

 

 

 

Hi,

I have not found a solution and have not looked any further.

A compatibility list would be nice.

Regards

Sarra.S
ST Employee

Hello again, 

Could you share your .ioc file, I will try to reproduce the same issue from my side using the same software environment and get back to you! 

To give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.

Thanks TWagn.2 for the fast response. Sorry for my late response, I was out of the office.

Hi Sarra.S,

 

sorry for my late response, I was out of the office.

After your request I tried to find a way of delivering another .ioc or example file I could send (the original one is for a real project which I cannot share). I remembered trying the freeRTOS_ThreadCreation example for the Nucleo-H7A3Zi-Q Board over a year ago. This is an eclipse (STM32CubeIDE) build control based project (not a make file based).

I reenabled it and tried to expand it with the awareness settings and for my surprise it worked there (with the same dev, make and compiler tools).

It took me several hours comparing and trying different settings between the projects, like used CMSIS Version, RTOS config settings, linker script differences (memory usage) and so on and on.

In the end I compared the build output between the projects and could see that the STM32CubeIDE based project compiles with -g3 and the Cube generated make project I used as example (on our HW) always has the '-g gdwarf-2' settings. And that seems to be the solution. If I remove the gdwarf-2 option the debug awareness setting works!

The DWARF2 output seems to break the proxy scanning of the .elf file!

I am unsure if this is a solution for everyone but for me, in this example, it solves the issue.

It would be nice if you could try to find out with your team if this is a general issue over versions and how to influence this DWARF setting inside the MXCube. And why is this DWARF2 setting set in the generated makefile?

 

Regards, hope this also helps other developers with such an issue!