diff options
Diffstat (limited to 'arch/x86/kvm')
| -rw-r--r-- | arch/x86/kvm/i8254.c | 6 | ||||
| -rw-r--r-- | arch/x86/kvm/lapic.c | 6 |
2 files changed, 6 insertions, 6 deletions
diff --git a/arch/x86/kvm/i8254.c b/arch/x86/kvm/i8254.c index 361e31611276..4c943eabacc3 100644 --- a/arch/x86/kvm/i8254.c +++ b/arch/x86/kvm/i8254.c | |||
| @@ -35,7 +35,7 @@ | |||
| 35 | #include "i8254.h" | 35 | #include "i8254.h" |
| 36 | 36 | ||
| 37 | #ifndef CONFIG_X86_64 | 37 | #ifndef CONFIG_X86_64 |
| 38 | #define mod_64(x, y) ((x) - (y) * div64_64(x, y)) | 38 | #define mod_64(x, y) ((x) - (y) * div64_u64(x, y)) |
| 39 | #else | 39 | #else |
| 40 | #define mod_64(x, y) ((x) % (y)) | 40 | #define mod_64(x, y) ((x) % (y)) |
| 41 | #endif | 41 | #endif |
| @@ -60,8 +60,8 @@ static u64 muldiv64(u64 a, u32 b, u32 c) | |||
| 60 | rl = (u64)u.l.low * (u64)b; | 60 | rl = (u64)u.l.low * (u64)b; |
| 61 | rh = (u64)u.l.high * (u64)b; | 61 | rh = (u64)u.l.high * (u64)b; |
| 62 | rh += (rl >> 32); | 62 | rh += (rl >> 32); |
| 63 | res.l.high = div64_64(rh, c); | 63 | res.l.high = div64_u64(rh, c); |
| 64 | res.l.low = div64_64(((mod_64(rh, c) << 32) + (rl & 0xffffffff)), c); | 64 | res.l.low = div64_u64(((mod_64(rh, c) << 32) + (rl & 0xffffffff)), c); |
| 65 | return res.ll; | 65 | return res.ll; |
| 66 | } | 66 | } |
| 67 | 67 | ||
diff --git a/arch/x86/kvm/lapic.c b/arch/x86/kvm/lapic.c index 57ac4e4c556a..36809d79788b 100644 --- a/arch/x86/kvm/lapic.c +++ b/arch/x86/kvm/lapic.c | |||
| @@ -25,13 +25,13 @@ | |||
| 25 | #include <linux/hrtimer.h> | 25 | #include <linux/hrtimer.h> |
| 26 | #include <linux/io.h> | 26 | #include <linux/io.h> |
| 27 | #include <linux/module.h> | 27 | #include <linux/module.h> |
| 28 | #include <linux/math64.h> | ||
| 28 | #include <asm/processor.h> | 29 | #include <asm/processor.h> |
| 29 | #include <asm/msr.h> | 30 | #include <asm/msr.h> |
| 30 | #include <asm/page.h> | 31 | #include <asm/page.h> |
| 31 | #include <asm/current.h> | 32 | #include <asm/current.h> |
| 32 | #include <asm/apicdef.h> | 33 | #include <asm/apicdef.h> |
| 33 | #include <asm/atomic.h> | 34 | #include <asm/atomic.h> |
| 34 | #include <asm/div64.h> | ||
| 35 | #include "irq.h" | 35 | #include "irq.h" |
| 36 | 36 | ||
| 37 | #define PRId64 "d" | 37 | #define PRId64 "d" |
| @@ -526,8 +526,8 @@ static u32 apic_get_tmcct(struct kvm_lapic *apic) | |||
| 526 | } else | 526 | } else |
| 527 | passed = ktime_sub(now, apic->timer.last_update); | 527 | passed = ktime_sub(now, apic->timer.last_update); |
| 528 | 528 | ||
| 529 | counter_passed = div64_64(ktime_to_ns(passed), | 529 | counter_passed = div64_u64(ktime_to_ns(passed), |
| 530 | (APIC_BUS_CYCLE_NS * apic->timer.divide_count)); | 530 | (APIC_BUS_CYCLE_NS * apic->timer.divide_count)); |
| 531 | 531 | ||
| 532 | if (counter_passed > tmcct) { | 532 | if (counter_passed > tmcct) { |
| 533 | if (unlikely(!apic_lvtt_period(apic))) { | 533 | if (unlikely(!apic_lvtt_period(apic))) { |
