Quality RTOS & Embedded Software

 Real time embedded FreeRTOS RSS feed 
Quick Start Supported MCUs PDF Books Trace Tools Ecosystem TCP & FAT




Loading

deleting twice crashes the application

Posted by mkrug on March 1, 2008
Hello,

in my application serveral tasks could delete one task (say: taks_to_delete). Additionally I have quite a high interrupt load that starts (unblock) most of my tasks. So the following could happen
1.) a tasks issues the command vTaskDelete(task_to_delete_handle)
2.) before the command gets completed a interrupt occurs that will unblock a high priority task
3.) this task also issues the command vTaskDelete(task_to_delete_handle)


In that cases it seems to me that my application crashes. I assume it happens when vTaskDelete() call try's to delete a task that is not existing anymore. So far I had no idea how to verify my assumption. So here are my questions:
a) Is there a possibility to 'survive' a vTaskDelete() call that try's to delete a tasks that is not existing anymore ?
b) is there a possibility to check which RTOS API-call causes the system crash ?

Best Regards
Markus

RE: deleting twice crashes the application

Posted by Adrian Carpenter on March 1, 2008
If you're using an ARM processor and "by crash" you've ended up in an abort handler, then r14 gives the address that caused the abort. You can then work back (using your map file) to what caused the abort.


[ Back to the top ]    [ About FreeRTOS ]    [ Sitemap ]    [ ]




Copyright (C) Amazon Web Services, Inc. or its affiliates. All rights reserved.

Latest News

FreeRTOS kernel V10 is available for immediate download. Now MIT licensed.


FreeRTOS Partners

ARM Connected RTOS partner for all ARM microcontroller cores

IAR Partner

Microchip Premier RTOS Partner

RTOS partner of NXP for all NXP ARM microcontrollers

STMicro RTOS partner supporting ARM7, ARM Cortex-M3, ARM Cortex-M4 and ARM Cortex-M0

Texas Instruments MCU Developer Network RTOS partner for ARM and MSP430 microcontrollers

OpenRTOS and SafeRTOS