On Wed, Nov 21, 2012 at 06:34:00PM -0800, Sanjay Lal wrote:
> +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 (*vcpu_ioctl_get_regs) (struct kvm_vcpu *vcpu,
> + struct kvm_regs *regs);
> + int (*vcpu_ioctl_set_regs) (struct kvm_vcpu *vcpu,
> + struct kvm_regs *regs);
> +};
You haven't addressed Avi's comment about dropping the interaction and
adding it later, when other HW is supported and the best way to do the split
is known.
--
Gleb.
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html