diff options
| author | Shell <[email protected]> | 2023-10-26 13:56:27 +0800 |
|---|---|---|
| committer | GitHub <[email protected]> | 2023-10-26 13:56:27 +0800 |
| commit | eafb04e01126a4da572ec5551427adeb08dcb2bb (patch) | |
| tree | 782c636b7224053468d82748779e1c9ff44157e7 /include/rtthread.h | |
| parent | 01672f8627e3b341e7eb30adef42660bce25b1c3 (diff) | |
[ctime] fixup of data racing (#8187)
Signed-off-by: Shell <[email protected]>
Diffstat (limited to 'include/rtthread.h')
| -rw-r--r-- | include/rtthread.h | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/include/rtthread.h b/include/rtthread.h index 47d03119eb..0e9502d469 100644 --- a/include/rtthread.h +++ b/include/rtthread.h @@ -544,8 +544,8 @@ rt_thread_t rt_thread_defunct_dequeue(void); /* * spinlock */ -#ifdef RT_USING_SMP struct rt_spinlock; +#ifdef RT_USING_SMP void rt_spin_lock_init(struct rt_spinlock *lock); void rt_spin_lock(struct rt_spinlock *lock); @@ -553,11 +553,11 @@ void rt_spin_unlock(struct rt_spinlock *lock); rt_base_t rt_spin_lock_irqsave(struct rt_spinlock *lock); void rt_spin_unlock_irqrestore(struct rt_spinlock *lock, rt_base_t level); #else -#define rt_spin_lock_init(lock) { RT_UNUSED(lock); } -#define rt_spin_lock(lock) { RT_UNUSED(lock); } -#define rt_spin_unlock(lock) { RT_UNUSED(lock); } -#define rt_spin_lock_irqsave(lock) ({ RT_UNUSED(lock); rt_hw_interrupt_disable(); }) -#define rt_spin_unlock_irqrestore(lock, level) { RT_UNUSED(lock); rt_hw_interrupt_enable(level); } +#define rt_spin_lock_init(lock) do {RT_UNUSED(lock);} while (0) +#define rt_spin_lock(lock) do {RT_UNUSED(lock);} while (0) +#define rt_spin_unlock(lock) do {RT_UNUSED(lock);} while (0) +rt_inline rt_base_t rt_spin_lock_irqsave(struct rt_spinlock *lock) {RT_UNUSED(lock);return rt_hw_interrupt_disable();} +#define rt_spin_unlock_irqrestore(lock, level) do {RT_UNUSED(lock); rt_hw_interrupt_enable(level);} while (0) #endif /* RT_USING_SMP */ /**@}*/ |
