Debug single step painfully slow with FreeRTOS running.
Hi,
I've noticed that single stepping debug with FreeRTOS running is painfully slow. (ie 1 second per step)
Up until the point that FreeROTS starts everything is fine (almost instant) , but after osKernelStart() is called it goes slow.
There is only 1 FreeRTOS task and this is simply toggling an LED!
FYI. It seems to happen after the call to prvPortStartFirstTask() in port.c.
Tried it on F4Discovery and F7Discovery boards, and on different (Win7) machines.
Crossworks and libs are latest, as is freeRTOS (v8.2.1). STLink has the latest firmware too.
Any ideas?
Cheers
Mark.
(PS sadly, cant use CTL for this project, cos of 3rd party libs)
-
Luke,
ok, its getting worse!
I can stop the issues by turning off Level 2 optimisation in the FreeROTS libraries; debugging step speed is then fine before and after FreeRTOS starts.
Bit confused at the mo as other probs arrising with "DEV_TARGET_CMD_ERR" and loss of debug connection to the target, when I turn optimisation back on.
Might just be down to my dodgy code... will update as I find out more.
-
The default is to restrict memory accesses. However we may not have covered all the valid address spaces in the memory map file (this would cause peripheral registers to be read as 0xfefefefe) so you may have switched this off. The problem is backtracing out of FreeRTOS tasks - the debugger would stop at 100 backtraces on each single step.
Please sign in to leave a comment.
Comments
7 comments