mirror of
https://github.com/espressif/esp-idf
synced 2025-03-09 09:09:10 -04:00
esp_ipc: fix race condition in ipc task
This commit is contained in:
parent
804a99790a
commit
d6ed894113
@ -30,7 +30,6 @@ endif()
|
||||
|
||||
idf_component_register(SRCS "${srcs}"
|
||||
INCLUDE_DIRS "${include_dirs}"
|
||||
PRIV_INCLUDE_DIRS "${priv_include_dirs}"
|
||||
PRIV_REQUIRES soc esp_ipc
|
||||
LDFRAGMENTS linker.lf)
|
||||
|
||||
|
@ -1 +1 @@
|
||||
Subproject commit cfbb0571fb424ca4a68a0c172cbff1fdc79fd91b
|
||||
Subproject commit fb49791b7c1a8a35f06e68124c90022667b4cff1
|
@ -1 +1 @@
|
||||
Subproject commit 9ca8afd50afde57958a67fca65847edc52f7d91c
|
||||
Subproject commit 7ad49c38b893952bbed155ede2c7684f0307f6d3
|
@ -1 +1 @@
|
||||
Subproject commit 7c349dbb6b8d76db39383b226d3ebdf59b8ab37d
|
||||
Subproject commit 085ca40781f7c39febe6d14fb7e5cba342e1804b
|
@ -1 +1 @@
|
||||
Subproject commit 9b6451c3654bc1f625e36c87f018c2da34bea5e6
|
||||
Subproject commit 98954eb30a2e728e172a6cd29430ae5bc999b585
|
@ -75,7 +75,6 @@ static void IRAM_ATTR ipc_task(void* arg)
|
||||
if (s_ipc_wait[cpuid] == IPC_WAIT_FOR_END) {
|
||||
xSemaphoreGive(s_ipc_ack[cpuid]);
|
||||
}
|
||||
s_func[cpuid] = NULL;
|
||||
}
|
||||
|
||||
}
|
||||
@ -142,6 +141,7 @@ static esp_err_t esp_ipc_call_and_wait(uint32_t cpu_id, esp_ipc_func_t func, voi
|
||||
s_ipc_wait[cpu_id] = wait_for;
|
||||
xSemaphoreGive(s_ipc_sem[cpu_id]);
|
||||
xSemaphoreTake(s_ipc_ack[cpu_id], portMAX_DELAY);
|
||||
s_func[cpu_id] = NULL;
|
||||
#ifdef CONFIG_ESP_IPC_USES_CALLERS_PRIORITY
|
||||
xSemaphoreGive(s_ipc_mutex[cpu_id]);
|
||||
#else
|
||||
|
@ -1 +1 @@
|
||||
Subproject commit 045b526641b7dbe7a6be3d9039be93a2c1b56f10
|
||||
Subproject commit e6945e61f7c63545a77b0575c3770a85b4de948e
|
@ -1 +1 @@
|
||||
Subproject commit c4badd394eda18199c0196ed0be1e2d635f0a5f6
|
||||
Subproject commit 334e95fac52a607150157ae5199a19e11f843982
|
Loading…
x
Reference in New Issue
Block a user