pthread: Transform the units of the stack size to the FreeRTOS domain

Closes https://github.com/espressif/esp-idf/issues/3015
pull/3110/head
Roland Dobai 2019-02-26 16:55:20 +01:00
rodzic a52ba8df7d
commit 314c77609e
1 zmienionych plików z 5 dodań i 1 usunięć

Wyświetl plik

@ -286,7 +286,11 @@ int pthread_create(pthread_t *thread, const pthread_attr_t *attr,
pthread->task_arg = task_arg;
BaseType_t res = xTaskCreatePinnedToCore(&pthread_task_func,
task_name,
stack_size,
// stack_size is in bytes. This transformation ensures that the units are
// transformed to the units used in FreeRTOS.
// Note: float division of ceil(m / n) ==
// integer division of (m + n - 1) / n
(stack_size + sizeof(StackType_t) - 1) / sizeof(StackType_t),
task_arg,
prio,
&xHandle,