Description
Here is:
cpptools v0.13.0
VSCode 1.16.1
Windows 8
I use VS Code to develop application for the ARM Cortem-Mx MCUs. When starting debugger with multithreaded application (with OpenOCD threads support) I need to run debugger session twice - first time VS Code drops debugging session. Standalone gdb-OpenOCD session runs flawlessly.
That is not a big problem, cause debugger functions properly after the second start, but it looks like something is broken.
Here is the debug log of the VSCode for the first debugger start:
first.txt
And here is for the second one:
second.txt
Note: when application starts there is no OS running yet, so OpenOCD reports there is a fake thread (thread id 1). This thread terminates on OS start and new real threads created.
The problem may be related to #978 issue.
Activity
[-]Need to run debugging session twice when debugging multithreaded application[/-][+][ARM] Need to run debugging session twice when debugging multithreaded application[/+]pieandcakes commentedon Sep 27, 2017
@sov1178 Looking at the logs, in the first one there are two things:
and
I would expect that if other threads are running, the thread-group that they belong to, in this instance
i1
doesn't exit while its running.I don't know if this is an issue in our code or an issue in the arm gdb version.
UR3IQO commentedon Sep 28, 2017
@pieandcakes Thread 1 will always exit as soon as OS starts - it is not the real thread. OpenOCD makes fake thread to tell gdb that something is running before the OS starts. So it is OK. I do not know what caused thread-group exit message. I will see OpenOCD logs and write more.
If I run gdb+OpenOCD with the same project/settings but without VSCode everything works finely, so it looks like it is related to VSCode.
cooperbaker commentedon Apr 29, 2019
Bump.
Exact same problem. Any solution?
cvonk commentedon May 10, 2019
I see the same on ESP32, but it disappears when I disable FreeRTOS support in the board configuration file. Sorry, don't have an ARM board at hand.
*) in my case "set ESP32_RTOS none"