From: OpenOCD-Gerrit <ope...@us...> - 2022-08-08 20:48:18
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "Main OpenOCD repository". The branch, master has been updated via 3865c411eebf01192ee347a1bd5c201c97ed23a6 (commit) from b5dd6faf8d47781f2d7cba25decac79bd2310351 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 3865c411eebf01192ee347a1bd5c201c97ed23a6 Author: Frank Dischner <fra...@gm...> Date: Sun Apr 17 21:12:39 2022 -0500 FreeRTOS: Fix current thread ID when no threads are active When there are no rtos threads or none are active, a fake thread with ID 1 is created for the current execution, but the current thread ID was never set to this new fake ID. This would lead to an incorrect attempt to read stacked registers for this fake thread. Explicitly setting the current thread ID to the fake ID ensures that the registers are read from the core instead of calling freertos_get_thread_reg_list. Signed-off-by: Frank Dischner <fra...@gm...> Change-Id: I694509a0e01df089429b20ff1b879fc0592b532d Reviewed-on: https://review.openocd.org/c/openocd/+/6934 Tested-by: jenkins Reviewed-by: Asier Llano <asi...@gm...> Reviewed-by: Tomas Vanek <va...@fb...> diff --git a/src/rtos/FreeRTOS.c b/src/rtos/FreeRTOS.c index 499759ab3..5f779ef70 100644 --- a/src/rtos/FreeRTOS.c +++ b/src/rtos/FreeRTOS.c @@ -207,7 +207,8 @@ static int freertos_update_threads(struct rtos *rtos) LOG_ERROR("Error allocating memory for %d threads", thread_list_size); return ERROR_FAIL; } - rtos->thread_details->threadid = 1; + rtos->current_thread = 1; + rtos->thread_details->threadid = rtos->current_thread; rtos->thread_details->exists = true; rtos->thread_details->extra_info_str = NULL; rtos->thread_details->thread_name_str = malloc(sizeof(tmp_str)); ----------------------------------------------------------------------- Summary of changes: src/rtos/FreeRTOS.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) hooks/post-receive -- Main OpenOCD repository |