From 97b24a1a0ba092f0fcd7e9d72ed443cab268fcf2 Mon Sep 17 00:00:00 2001 From: wangchengdong Date: Tue, 4 Nov 2025 13:27:25 +0800 Subject: [PATCH] xtensa/esp32: Replace spinlock/sched_lock with spin_lock_irqsave_nopreempt Replace the spinlock/sched_lock pair in xtensa/esp32 with spin_lock_irqsave_nopreempt() to improve code clarity and consistency. Signed-off-by: Chengdong Wang wangchengdong@lixiang.com --- arch/xtensa/src/esp32/esp32_rtc.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/arch/xtensa/src/esp32/esp32_rtc.c b/arch/xtensa/src/esp32/esp32_rtc.c index b7b0e624740..c344d5787c0 100644 --- a/arch/xtensa/src/esp32/esp32_rtc.c +++ b/arch/xtensa/src/esp32/esp32_rtc.c @@ -2189,8 +2189,7 @@ int up_rtc_cancelalarm(enum alm_id_e alarmid) if (cbinfo->ac_cb != NULL) { - sched_lock(); - flags = spin_lock_irqsave(&g_rtc_lock); + flags = spin_lock_irqsave_nopreempt(&g_rtc_lock); /* Stop and delete the alarm */ @@ -2201,8 +2200,7 @@ int up_rtc_cancelalarm(enum alm_id_e alarmid) cbinfo->deadline_us = 0; cbinfo->alarm_hdl = NULL; - spin_unlock_irqrestore(&g_rtc_lock, flags); - sched_unlock(); + spin_unlock_irqrestore_nopreempt(&g_rtc_lock, flags); ret = OK; }