[PATCH] timers: Remove historical extra jiffie for timeout in msleep()

From: Anna-Maria Behnsen
Date: Thu Aug 29 2024 - 03:41:52 EST


msleep() as well as msleep_interruptible() add a jiffie to the
timeout. This extra jiffie was introduced in former days to ensure timeout
will not happen earlier than specified. But the timer wheel already takes
care during enqueue that timers will not expire earlier than specified.

Remove this extra jiffie in msleep() and msleep_interruptible().

Signed-off-by: Anna-Maria Behnsen <anna-maria@xxxxxxxxxxxxx>
---
kernel/time/timer.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/kernel/time/timer.c b/kernel/time/timer.c
index 64b0d8a0aa0f..18aa759c3cae 100644
--- a/kernel/time/timer.c
+++ b/kernel/time/timer.c
@@ -2730,7 +2730,7 @@ void __init init_timers(void)
*/
void msleep(unsigned int msecs)
{
- unsigned long timeout = msecs_to_jiffies(msecs) + 1;
+ unsigned long timeout = msecs_to_jiffies(msecs);

while (timeout)
timeout = schedule_timeout_uninterruptible(timeout);
@@ -2744,7 +2744,7 @@ EXPORT_SYMBOL(msleep);
*/
unsigned long msleep_interruptible(unsigned int msecs)
{
- unsigned long timeout = msecs_to_jiffies(msecs) + 1;
+ unsigned long timeout = msecs_to_jiffies(msecs);

while (timeout && !signal_pending(current))
timeout = schedule_timeout_interruptible(timeout);
--
2.39.2