From 3fe0022efafb4c11dd6e3dc24b92ff9976e59a77 Mon Sep 17 00:00:00 2001 From: Angus Gratton Date: Thu, 29 Jun 2017 14:02:54 +1000 Subject: [PATCH] stack sizes: Revert stack size increases added in 8d43859 Set min stack size to 2048 if AppTrace support is enabled, 512 bytes otherwise. --- components/esp32/dport_access.c | 2 +- components/esp32/ipc.c | 2 +- .../freertos/include/freertos/FreeRTOSConfig.h | 12 +++++------- examples/get-started/blink/main/blink.c | 2 +- 4 files changed, 8 insertions(+), 10 deletions(-) diff --git a/components/esp32/dport_access.c b/components/esp32/dport_access.c index f80de4012..473c43325 100644 --- a/components/esp32/dport_access.c +++ b/components/esp32/dport_access.c @@ -173,7 +173,7 @@ static void dport_access_init_core(void *arg) /* Defer initialisation until after scheduler is running */ void esp_dport_access_int_init(void) { - xTaskCreatePinnedToCore(&dport_access_init_core, "dport", 512, NULL, 5, NULL, xPortGetCoreID()); + xTaskCreatePinnedToCore(&dport_access_init_core, "dport", configMINIMAL_STACK_SIZE, NULL, 5, NULL, xPortGetCoreID()); } void esp_dport_access_int_deinit(void) diff --git a/components/esp32/ipc.c b/components/esp32/ipc.c index b7524cae6..fce3fd430 100644 --- a/components/esp32/ipc.c +++ b/components/esp32/ipc.c @@ -80,7 +80,7 @@ void esp_ipc_init() const char* task_names[2] = {"ipc0", "ipc1"}; for (int i = 0; i < portNUM_PROCESSORS; ++i) { s_ipc_sem[i] = xSemaphoreCreateBinary(); - xTaskCreatePinnedToCore(ipc_task, task_names[i], XT_STACK_MIN_SIZE, (void*) i, + xTaskCreatePinnedToCore(ipc_task, task_names[i], configMINIMAL_STACK_SIZE, (void*) i, configMAX_PRIORITIES - 1, &s_ipc_tasks[i], i); } } diff --git a/components/freertos/include/freertos/FreeRTOSConfig.h b/components/freertos/include/freertos/FreeRTOSConfig.h index a69381e07..ffc17317f 100644 --- a/components/freertos/include/freertos/FreeRTOSConfig.h +++ b/components/freertos/include/freertos/FreeRTOSConfig.h @@ -163,15 +163,13 @@ #define configMAX_PRIORITIES ( 25 ) #endif -/* Minimal stack size. This may need to be increased for your application */ -/* NOTE: The FreeRTOS demos may not work reliably with stack size < 4KB. */ -/* The Xtensa-specific examples should be fine with XT_STACK_MIN_SIZE. */ -#if !(defined XT_STACK_MIN_SIZE) -#error XT_STACK_MIN_SIZE not defined, did you include xtensa_config.h ? +#ifndef CONFIG_ESP32_APPTRACE_ENABLE +#define configMINIMAL_STACK_SIZE 512 +#else +/* apptrace module requires at least 2KB of stack per task */ +#define configMINIMAL_STACK_SIZE 2048 #endif -#define configMINIMAL_STACK_SIZE (XT_STACK_MIN_SIZE > 1024 ? XT_STACK_MIN_SIZE : 1024) - /* The Xtensa port uses a separate interrupt stack. Adjust the stack size */ /* to suit the needs of your specific application. */ #ifndef configISR_STACK_SIZE diff --git a/examples/get-started/blink/main/blink.c b/examples/get-started/blink/main/blink.c index 5ca22bbde..c121d4fbe 100644 --- a/examples/get-started/blink/main/blink.c +++ b/examples/get-started/blink/main/blink.c @@ -40,5 +40,5 @@ void blink_task(void *pvParameter) void app_main() { - xTaskCreate(&blink_task, "blink_task", 2048, NULL, 5, NULL); + xTaskCreate(&blink_task, "blink_task", configMINIMAL_STACK_SIZE, NULL, 5, NULL); }