FreeRTOS: Fix current thread ID when no threads are active
authorFrank Dischner <frank.dischner@gmail.com>
Mon, 18 Apr 2022 02:12:39 +0000 (21:12 -0500)
committerTomas Vanek <vanekt@fbl.cz>
Mon, 8 Aug 2022 20:47:52 +0000 (20:47 +0000)
commit3865c411eebf01192ee347a1bd5c201c97ed23a6
treef49014277565fc56daee1021753ef93ac55222fc
parentb5dd6faf8d47781f2d7cba25decac79bd2310351
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 <frank.dischner@gmail.com>
Change-Id: I694509a0e01df089429b20ff1b879fc0592b532d
Reviewed-on: https://review.openocd.org/c/openocd/+/6934
Tested-by: jenkins
Reviewed-by: Asier Llano <asierllano@gmail.com>
Reviewed-by: Tomas Vanek <vanekt@fbl.cz>
src/rtos/FreeRTOS.c