diff --git a/sched/clock/clock_adjtime.c b/sched/clock/clock_adjtime.c index c7028f4fd83..a46924b7033 100644 --- a/sched/clock/clock_adjtime.c +++ b/sched/clock/clock_adjtime.c @@ -115,8 +115,7 @@ static int adjtime_start(long long adjust_usec) ppb = -ppb_limit; } - flags = spin_lock_irqsave(&g_adjtime_lock); - sched_lock(); + flags = spin_lock_irqsave_nopreempt(&g_adjtime_lock); /* Set new adjustment */ @@ -142,8 +141,7 @@ static int adjtime_start(long long adjust_usec) wd_cancel(&g_adjtime_wdog); } - spin_unlock_irqrestore(&g_adjtime_lock, flags); - sched_unlock(); + spin_unlock_irqrestore_nopreempt(&g_adjtime_lock, flags); return ret; }