diff options
Diffstat (limited to 'kernel/timer.c')
| -rw-r--r-- | kernel/timer.c | 8 | 
1 files changed, 5 insertions, 3 deletions
| diff --git a/kernel/timer.c b/kernel/timer.c index 15ffdb3f194..15bc1b41021 100644 --- a/kernel/timer.c +++ b/kernel/timer.c @@ -149,9 +149,11 @@ static unsigned long round_jiffies_common(unsigned long j, int cpu,  	/* now that we have rounded, subtract the extra skew again */  	j -= cpu * 3; -	if (j <= jiffies) /* rounding ate our timeout entirely; */ -		return original; -	return j; +	/* +	 * Make sure j is still in the future. Otherwise return the +	 * unmodified value. +	 */ +	return time_is_after_jiffies(j) ? j : original;  }  /** | 
