|
@@ -569,29 +569,29 @@ static inline void _kvm_atomic_change_c0_guest_reg(unsigned long *reg,
|
|
|
|
|
|
|
|
|
struct kvm_mips_callbacks {
|
|
|
- int (*handle_cop_unusable) (struct kvm_vcpu *vcpu);
|
|
|
- int (*handle_tlb_mod) (struct kvm_vcpu *vcpu);
|
|
|
- int (*handle_tlb_ld_miss) (struct kvm_vcpu *vcpu);
|
|
|
- int (*handle_tlb_st_miss) (struct kvm_vcpu *vcpu);
|
|
|
- int (*handle_addr_err_st) (struct kvm_vcpu *vcpu);
|
|
|
- int (*handle_addr_err_ld) (struct kvm_vcpu *vcpu);
|
|
|
- int (*handle_syscall) (struct kvm_vcpu *vcpu);
|
|
|
- int (*handle_res_inst) (struct kvm_vcpu *vcpu);
|
|
|
- int (*handle_break) (struct kvm_vcpu *vcpu);
|
|
|
- int (*vm_init) (struct kvm *kvm);
|
|
|
- int (*vcpu_init) (struct kvm_vcpu *vcpu);
|
|
|
- int (*vcpu_setup) (struct kvm_vcpu *vcpu);
|
|
|
- gpa_t(*gva_to_gpa) (gva_t gva);
|
|
|
- void (*queue_timer_int) (struct kvm_vcpu *vcpu);
|
|
|
- void (*dequeue_timer_int) (struct kvm_vcpu *vcpu);
|
|
|
- void (*queue_io_int) (struct kvm_vcpu *vcpu,
|
|
|
- struct kvm_mips_interrupt *irq);
|
|
|
- void (*dequeue_io_int) (struct kvm_vcpu *vcpu,
|
|
|
- struct kvm_mips_interrupt *irq);
|
|
|
- int (*irq_deliver) (struct kvm_vcpu *vcpu, unsigned int priority,
|
|
|
- uint32_t cause);
|
|
|
- int (*irq_clear) (struct kvm_vcpu *vcpu, unsigned int priority,
|
|
|
- uint32_t cause);
|
|
|
+ int (*handle_cop_unusable)(struct kvm_vcpu *vcpu);
|
|
|
+ int (*handle_tlb_mod)(struct kvm_vcpu *vcpu);
|
|
|
+ int (*handle_tlb_ld_miss)(struct kvm_vcpu *vcpu);
|
|
|
+ int (*handle_tlb_st_miss)(struct kvm_vcpu *vcpu);
|
|
|
+ int (*handle_addr_err_st)(struct kvm_vcpu *vcpu);
|
|
|
+ int (*handle_addr_err_ld)(struct kvm_vcpu *vcpu);
|
|
|
+ int (*handle_syscall)(struct kvm_vcpu *vcpu);
|
|
|
+ int (*handle_res_inst)(struct kvm_vcpu *vcpu);
|
|
|
+ int (*handle_break)(struct kvm_vcpu *vcpu);
|
|
|
+ int (*vm_init)(struct kvm *kvm);
|
|
|
+ int (*vcpu_init)(struct kvm_vcpu *vcpu);
|
|
|
+ int (*vcpu_setup)(struct kvm_vcpu *vcpu);
|
|
|
+ gpa_t (*gva_to_gpa)(gva_t gva);
|
|
|
+ void (*queue_timer_int)(struct kvm_vcpu *vcpu);
|
|
|
+ void (*dequeue_timer_int)(struct kvm_vcpu *vcpu);
|
|
|
+ void (*queue_io_int)(struct kvm_vcpu *vcpu,
|
|
|
+ struct kvm_mips_interrupt *irq);
|
|
|
+ void (*dequeue_io_int)(struct kvm_vcpu *vcpu,
|
|
|
+ struct kvm_mips_interrupt *irq);
|
|
|
+ int (*irq_deliver)(struct kvm_vcpu *vcpu, unsigned int priority,
|
|
|
+ uint32_t cause);
|
|
|
+ int (*irq_clear)(struct kvm_vcpu *vcpu, unsigned int priority,
|
|
|
+ uint32_t cause);
|
|
|
int (*get_one_reg)(struct kvm_vcpu *vcpu,
|
|
|
const struct kvm_one_reg *reg, s64 *v);
|
|
|
int (*set_one_reg)(struct kvm_vcpu *vcpu,
|