diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2013-05-02 17:56:31 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2013-05-02 17:56:31 -0400 |
commit | 0279b3c0ada1d78882f24acf94ac4595bd657a89 (patch) | |
tree | ba31505ea6581b840604493d0233857bb7ce58d1 /include/linux | |
parent | 797994f81a8b2bdca2eecffa415c1e7a89a4f961 (diff) | |
parent | f3002134158092178be81339ec5a22ff80e6c308 (diff) |
Merge branch 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
Pull scheduler fixes from Ingo Molnar:
"This fixes the cputime scaling overflow problems for good without
having bad 32-bit overhead, and gets rid of the div64_u64_rem() helper
as well."
* 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
Revert "math64: New div64_u64_rem helper"
sched: Avoid prev->stime underflow
sched: Do not account bogus utime
sched: Avoid cputime scaling overflow
Diffstat (limited to 'include/linux')
-rw-r--r-- | include/linux/math64.h | 19 |
1 files changed, 1 insertions, 18 deletions
diff --git a/include/linux/math64.h b/include/linux/math64.h index 931a619407bf..b8ba85544721 100644 --- a/include/linux/math64.h +++ b/include/linux/math64.h | |||
@@ -30,15 +30,6 @@ static inline s64 div_s64_rem(s64 dividend, s32 divisor, s32 *remainder) | |||
30 | } | 30 | } |
31 | 31 | ||
32 | /** | 32 | /** |
33 | * div64_u64_rem - unsigned 64bit divide with 64bit divisor | ||
34 | */ | ||
35 | static inline u64 div64_u64_rem(u64 dividend, u64 divisor, u64 *remainder) | ||
36 | { | ||
37 | *remainder = dividend % divisor; | ||
38 | return dividend / divisor; | ||
39 | } | ||
40 | |||
41 | /** | ||
42 | * div64_u64 - unsigned 64bit divide with 64bit divisor | 33 | * div64_u64 - unsigned 64bit divide with 64bit divisor |
43 | */ | 34 | */ |
44 | static inline u64 div64_u64(u64 dividend, u64 divisor) | 35 | static inline u64 div64_u64(u64 dividend, u64 divisor) |
@@ -70,16 +61,8 @@ static inline u64 div_u64_rem(u64 dividend, u32 divisor, u32 *remainder) | |||
70 | extern s64 div_s64_rem(s64 dividend, s32 divisor, s32 *remainder); | 61 | extern s64 div_s64_rem(s64 dividend, s32 divisor, s32 *remainder); |
71 | #endif | 62 | #endif |
72 | 63 | ||
73 | #ifndef div64_u64_rem | ||
74 | extern u64 div64_u64_rem(u64 dividend, u64 divisor, u64 *remainder); | ||
75 | #endif | ||
76 | |||
77 | #ifndef div64_u64 | 64 | #ifndef div64_u64 |
78 | static inline u64 div64_u64(u64 dividend, u64 divisor) | 65 | extern u64 div64_u64(u64 dividend, u64 divisor); |
79 | { | ||
80 | u64 remainder; | ||
81 | return div64_u64_rem(dividend, divisor, &remainder); | ||
82 | } | ||
83 | #endif | 66 | #endif |
84 | 67 | ||
85 | #ifndef div64_s64 | 68 | #ifndef div64_s64 |