summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorxqyjlj <[email protected]>2023-12-30 15:47:42 +0800
committerGitHub <[email protected]>2023-12-30 15:47:42 +0800
commit84706ba7b4224e0104f11d09d47227c67444f5dc (patch)
tree37393d20d3e2771d49fc48e36b156f6aacfdabe1 /src
parente045d30bac67d23b1baef1a34f3fc2a56893f58a (diff)
🐞 fix(cpu): cpus_lock should lock scheduler (#8368)
Diffstat (limited to 'src')
-rw-r--r--src/cpu.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/cpu.c b/src/cpu.c
index d8e12595c1..344a70b32e 100644
--- a/src/cpu.c
+++ b/src/cpu.c
@@ -162,7 +162,7 @@ rt_base_t rt_cpus_lock(void)
struct rt_cpu* pcpu;
level = rt_hw_local_irq_disable();
-
+ rt_enter_critical();
pcpu = rt_cpu_self();
if (pcpu->current_thread != RT_NULL)
{
@@ -207,6 +207,7 @@ void rt_cpus_unlock(rt_base_t level)
}
}
rt_hw_local_irq_enable(level);
+ rt_exit_critical();
}
RTM_EXPORT(rt_cpus_unlock);