Problem with Instrument Profiling

Sysprogs forums Forums VisualGDB Problem with Instrument Profiling

Viewing 2 posts - 1 through 2 (of 2 total)
  • Author
    Posts
  • #23360
    Ancaritha
    Participant

    I am trying to run the Instrument profiling and I keep running into an issue.  It will run for a small amount of time (a couple seconds) and then it’ll just stop working.  Sometimes I get no error message, the code just seems to stop running and if I hit pause on the debugger I’m off in the weeds in an invalid spot in flash.  Sometimes it does pop up with the following error:

    Instrumented stack stream corrupted: no frames found

    I’m still in the initialization part of my code, I haven’t even gotten to normal operation yet.  If I remove some functions from the instrumentation I seem to be able to make it a little bit further into the initialization before it dies again.  I doubled the size of stack for the task that it dies in and it still dies at the same point.

    I followed the instructions in this Tutorial to get it running: https://visualgdb.com/tutorials/arm/keil/rtx/instrumentation/
    I have the Semihosting Buffersize set to 32768 rather than the 4K from the tutorial, but I’ve also tried 4K and 16K with the same results

    Visual Studios 2012
    VisualGDB 5.4 Beta 2  (Custom version)
    FreeRTOS project
    STM32L496

    Any thoughts on things I should check or any other settings you need to be made aware of?

    Thanks!

    #23373
    support
    Keymaster

    Hi,

    The behavior you are describing might have several different causes, so we would advise simplifying the project as much as possible in order to pinpoint this:

    • First of all, try creating a fresh “LEDBlink” project for the same MCU/RTOS/compiler and check if the problem persists. If not, recheck your linker script, hardware settings (e.g. the use of timers) and special initialization functions.
    • If you are using the Keil compiler, try checking if the problem persists with GCC.
    • If you are using a RTOS (e.g. RTX), try checking if a similar project with no RTOS still has the problem.
    • Try creating a single test() function that will wait for a second, call it in a loop and disable instrumentation of ALL other functions.

    Let us know your findings and we will help you fix this.

Viewing 2 posts - 1 through 2 (of 2 total)
  • You must be logged in to reply to this topic.