Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 9f907c01 authored by Ingo Molnar's avatar Ingo Molnar Committed by Linus Torvalds
Browse files

[PATCH] Fix timeout overflow with jiffies



Prevent timeout overflow if timer ticks are behind jiffies (due to high
softirq load or due to dyntick), by limiting the valid timeout range to
MAX_LONG/2.

Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
Cc: john stultz <johnstul@us.ibm.com>
Cc: Roman Zippel <zippel@linux-m68k.org>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent 41cf5445
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -142,13 +142,13 @@ static inline u64 get_jiffies_64(void)
 *
 * And some not so obvious.
 *
 * Note that we don't want to return MAX_LONG, because
 * Note that we don't want to return LONG_MAX, because
 * for various timeout reasons we often end up having
 * to wait "jiffies+1" in order to guarantee that we wait
 * at _least_ "jiffies" - so "jiffies+1" had better still
 * be positive.
 */
#define MAX_JIFFY_OFFSET ((~0UL >> 1)-1)
#define MAX_JIFFY_OFFSET ((LONG_MAX >> 1)-1)

/*
 * We want to do realistic conversions of time so we need to use the same