mirror of
https://github.com/espressif/esp-idf.git
synced 2025-08-09 12:35:28 +00:00
docs(esp_system): Document limitations of esp_execute_shared_stack_function
This commit is contained in:
@@ -22,9 +22,23 @@ typedef void (*shared_stack_function)(void);
|
||||
esp_execute_shared_stack_function(lock, stack, stack_size, expression)
|
||||
|
||||
/**
|
||||
* @brief Calls user defined shared stack space function
|
||||
* @brief Calls function on user defined shared stack space
|
||||
*
|
||||
* After returning, the original stack is used again.
|
||||
*
|
||||
* @warning This function does minimal preparation of the provided piece of memory (\c stack).
|
||||
* DO NOT do any of the following in \c function or any of its callees:
|
||||
* * Use Thread-local storage
|
||||
* * Use the Floating-point unit on ESP32-P4
|
||||
* * Use the AI co-processor on ESP32-P4
|
||||
* * Call vTaskDelete(NULL) (deleting the currently running task)
|
||||
* Furthermore, backtraces will be wrong when called from \c function or any of its callees.
|
||||
* The limitations are quite sever, so that we might deprecate this function in the future.
|
||||
* If you have any use case which can only be implemented using this function, please open
|
||||
* an issue on github.
|
||||
*
|
||||
* @param lock Mutex object to protect in case of shared stack
|
||||
* @param stack Pointer to user alocated stack
|
||||
* @param stack Pointer to user allocated stack
|
||||
* @param stack_size Size of current stack in bytes
|
||||
* @param function pointer to the shared stack function to be executed
|
||||
* @note if either lock, stack or stack size is invalid, the expression will
|
||||
|
Reference in New Issue
Block a user