freertos-smp: Fixed stack overflow on esp32s3 with FreeRTOS SMP

The following changes have been made in this commit:
1. configMINIMAL_STACK_SIZE is now defined as CONFIG_FREERTOS_IDLE_TASK_STACKSIZE.
2. Removed configIDLE_TASK_STACK_SIZE config as it was redundant.
3. Updates the order of allocating the TCB and stack memory to avoid the
   stack memory overriding the TCB memory when the stack grows downwards.
4. CONFIG_FREERTOS_IDLE_TASK_STACKSIZE is now incorporated into the
   FreeRTOSConfig_smp.h to configure the IDLE0 stack size.
This commit is contained in:
Sudeep Mohanty
2022-11-03 13:56:19 +01:00
parent b05bcf465e
commit 9bb8f0e38d
7 changed files with 88 additions and 79 deletions

View File

@@ -2355,7 +2355,7 @@ void vTaskStartScheduler( void )
/* The Idle task is being created using dynamically allocated RAM. */
xReturn = xTaskCreatePinnedToCore( prvIdleTask,
configIDLE_TASK_NAME,
configIDLE_TASK_STACK_SIZE,
configMINIMAL_STACK_SIZE,
( void * ) NULL,
portPRIVILEGE_BIT, /* In effect ( tskIDLE_PRIORITY | portPRIVILEGE_BIT ), but tskIDLE_PRIORITY is zero. */
&xIdleTaskHandle[ xCoreID ],