diff --git a/kernel/timer.c b/kernel/timer.c
index 2a87430a58d4046d10000fcd6bd4e56308a9a4bc..acfa557e685b9291b09a8e72fa3492d4d16c6912 100644
--- a/kernel/timer.c
+++ b/kernel/timer.c
@@ -374,6 +374,7 @@ int del_timer_sync(struct timer_list *timer)
 		int ret = try_to_del_timer_sync(timer);
 		if (ret >= 0)
 			return ret;
+		cpu_relax();
 	}
 }