#ifdef CONFIG_X86_64
#include <asm/pgalloc.h>
#include <asm/proto.h>
- -#include <asm/pda.h>
#else
#include <asm/processor-flags.h>
- -----#include <asm/arch_hooks.h>
+ +++++#include <asm/setup.h>
#include <asm/traps.h>
#include "cpu/mcheck/mce.h"
}
#endif /* CONFIG_MATH_EMULATION */
-dotraplinkage void __kprobes do_device_not_available(struct pt_regs regs)
+dotraplinkage void __kprobes
- do_device_not_available(struct pt_regs *regs, long error)
+ +do_device_not_available(struct pt_regs *regs, long error_code)
{
#ifdef CONFIG_X86_32
if (read_cr0() & X86_CR0_EM) {
- conditional_sti(®s);
+ struct math_emu_info info = { };
+
- math_emulate(0);
+ conditional_sti(regs);
- info.regs = ®s;
+
+ + info.regs = regs;
+ math_emulate(&info);
} else {
math_state_restore(); /* interrupts still off */
- conditional_sti(®s);
+ conditional_sti(regs);
}
#else
math_state_restore();
static cycle_t read_real_cycles(void)
{
- - return vmi_timer_ops.get_cycle_counter(VMI_CYCLES_REAL);
+ + cycle_t ret = (cycle_t)vmi_timer_ops.get_cycle_counter(VMI_CYCLES_REAL);
- --- return ret >= clocksource_vmi.cycle_last ?
- --- ret : clocksource_vmi.cycle_last;
+++ +++ return max(ret, clocksource_vmi.cycle_last);
}
static struct clocksource clocksource_vmi = {