esp_ipc: fix race condition in ipc task

This commit is contained in:
Erhan Kurubas 2021-08-23 17:17:19 +03:00
parent e662d90e9f
commit e4fdf07acb
13 changed files with 12 additions and 13 deletions

@ -1 +1 @@
Subproject commit f31694c9f1746ba189a4bcae2e34db15135ddb22
Subproject commit 3b66e5b051381fb70de9c2791df70a06181c64e3

@ -1 +1 @@
Subproject commit cfbb0571fb424ca4a68a0c172cbff1fdc79fd91b
Subproject commit fb49791b7c1a8a35f06e68124c90022667b4cff1

@ -1 +0,0 @@
Subproject commit 7ad49c38b893952bbed155ede2c7684f0307f6d3

@ -1 +1 @@
Subproject commit aef55bbf636ed580d4d6408a5c2e75d1f70a875e
Subproject commit 33179b331639a6157d9196b87a3e2e53f86c7072

@ -1 +1 @@
Subproject commit 085ca40781f7c39febe6d14fb7e5cba342e1804b
Subproject commit d2dd95cb8841d88d5a801e3ef9c328fd6200e7bd

View File

@ -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 e6945e61f7c63545a77b0575c3770a85b4de948e
Subproject commit fbcdc77c26eb0d716927c8bc7d73dbec9a8987c1

@ -1 +1 @@
Subproject commit 258301731780493365bb249553ae7855a3e753ea
Subproject commit 4698b396730b23fb4aab023c5fb1744db957fc4c

@ -1 +1 @@
Subproject commit 2195f7416fb3136831babf3e96c027a73075bd4f
Subproject commit 2c9c531f0a7e0ee536db9de4f9dc54e453712087

@ -1 +1 @@
Subproject commit f10321a53b53a146ee299cfecc320b89c0cf6611
Subproject commit 9ea804e0ab5368d5ab53ae2301a5fec9d1f12f1a

@ -1 +1 @@
Subproject commit 8f7b008b158e12de0e58247afd170f127dbb6456
Subproject commit 3bcc416e13cc790e2fb45fcfe9111d38609c5032

@ -1 +1 @@
Subproject commit 334e95fac52a607150157ae5199a19e11f843982
Subproject commit 28f89e13473d40637574bcbfe4142633b39899fd

@ -1 +1 @@
Subproject commit bb672b0437485fc7420add178299631692b15ac3
Subproject commit c3d3a69021cfec3236ca2c0b63be4048ec6643a4