Lines Matching defs:kvm_vcpu_arch
487 struct kvm_vcpu_arch { struct
488 ulong host_stack;
489 u32 host_pid;
491 struct kvmppc_slb slb[64];
492 int slb_max; /* 1 + index of last valid entry in slb[] */
493 int slb_nr; /* total number of entries in SLB */
494 struct kvmppc_mmu mmu;
495 struct kvmppc_vcpu_book3s *book3s;
498 struct kvmppc_book3s_shadow_vcpu *shadow_vcpu;
501 struct pt_regs regs;
503 struct thread_fp_state fp;
506 ulong evr[32];
507 ulong spefscr;
508 ulong host_spefscr;
509 u64 acc;
512 struct thread_vr_state vr;
516 u32 host_mas4;
517 u32 host_mas6;
518 u32 shadow_epcr;
519 u32 shadow_msrp;
520 u32 eplc;
521 u32 epsc;
522 u32 oldpir;
527 u32 epcr;
533 u32 qpr[32];
537 ulong tar;
540 u32 cr;
543 ulong hflags;
544 ulong guest_owned_ext;
545 ulong purr;
546 ulong spurr;
547 ulong ic;
548 ulong dscr;
549 ulong amr;
550 ulong uamor;
551 ulong iamr;
552 u32 ctrl;
553 u32 dabrx;
554 ulong dabr;
555 ulong dawr;
556 ulong dawrx;
557 ulong ciabr;
558 ulong cfar;
559 ulong ppr;
560 u32 pspb;
561 ulong fscr;
562 ulong shadow_fscr;
563 ulong ebbhr;
564 ulong ebbrr;
565 ulong bescr;
566 ulong csigr;
567 ulong tacr;
568 ulong tcscr;
569 ulong acop;
570 ulong wort;
571 ulong tid;
572 ulong psscr;
573 ulong hfscr;
574 ulong shadow_srr1;
576 u32 vrsave; /* also USPRG0 */
577 u32 mmucr;
579 ulong shadow_msr;
580 ulong csrr0;
581 ulong csrr1;
582 ulong dsrr0;
583 ulong dsrr1;
584 ulong mcsrr0;
585 ulong mcsrr1;
586 ulong mcsr;
587 ulong dec;
589 u32 decar;
592 u64 entry_tb;
593 u64 entry_vtb;
594 u64 entry_ic;
595 u32 tcr;
596 ulong tsr; /* we need to perform set/clr_bits() which requires ulong */
597 u32 ivor[64];
598 ulong ivpr;
599 u32 pvr;
601 u32 shadow_pid;
602 u32 shadow_pid1;
603 u32 pid;
604 u32 swap_pid;
606 u32 ccr0;
607 u32 ccr1;
608 u32 dbsr;
610 u64 mmcr[5];
611 u32 pmc[8];
612 u32 spmc[2];
613 u64 siar;
614 u64 sdar;
615 u64 sier;
617 u64 tfhar;
618 u64 texasr;
619 u64 tfiar;
620 u64 orig_texasr;
622 u32 cr_tm;
623 u64 xer_tm;
624 u64 lr_tm;
625 u64 ctr_tm;
626 u64 amr_tm;
627 u64 ppr_tm;
628 u64 dscr_tm;
629 u64 tar_tm;
631 ulong gpr_tm[32];
633 struct thread_fp_state fp_tm;
635 struct thread_vr_state vr_tm;
636 u32 vrsave_tm; /* also USPRG0 */
640 struct mutex exit_timing_lock;
641 struct kvmppc_exit_timing timing_exit;
642 struct kvmppc_exit_timing timing_last_enter;
643 u32 last_exit_type;
644 u32 timing_count_type[__NUMBER_OF_KVM_EXIT_TYPES];
645 u64 timing_sum_duration[__NUMBER_OF_KVM_EXIT_TYPES];
646 u64 timing_sum_quad_duration[__NUMBER_OF_KVM_EXIT_TYPES];
647 u64 timing_min_duration[__NUMBER_OF_KVM_EXIT_TYPES];
648 u64 timing_max_duration[__NUMBER_OF_KVM_EXIT_TYPES];
649 u64 timing_last_exit;
650 struct dentry *debugfs_exit_timing;
654 ulong fault_dar;
655 u32 fault_dsisr;
656 unsigned long intr_msr;
657 ulong fault_gpa; /* guest real address of page fault (POWER9) */
661 ulong fault_dear;
662 ulong fault_esr;
663 ulong queued_dear;
664 ulong queued_esr;
665 spinlock_t wdt_lock;
666 struct timer_list wdt_timer;
667 u32 tlbcfg[4];
668 u32 tlbps[4];
669 u32 mmucfg;
670 u32 eptcfg;
671 u32 epr;
672 u64 sprg9;
673 u32 pwrmgtcr0;
674 u32 crit_save;
676 struct debug_reg dbg_reg;
678 gpa_t paddr_accessed;
679 gva_t vaddr_accessed;
680 pgd_t *pgdir;
682 u16 io_gpr; /* GPR used as IO source/target */
683 u8 mmio_host_swabbed;
684 u8 mmio_sign_extend;
686 u8 mmio_sp64_extend;
696 u8 mmio_vsx_copy_nums;
697 u8 mmio_vsx_offset;
698 u8 mmio_vmx_copy_nums;
699 u8 mmio_vmx_offset;
700 u8 mmio_copy_type;
701 u8 osi_needed;
702 u8 osi_enabled;
703 u8 papr_enabled;
704 u8 watchdog_enabled;
705 u8 sane;
706 u8 cpu_type;
707 u8 hcall_needed;
708 u8 epr_flags; /* KVMPPC_EPR_xxx */
709 u8 epr_needed;
711 u32 cpr0_cfgaddr; /* holds the last set cpr0_cfgaddr */
735 struct kvm_vcpu_arch_shared *shared; argument
758 struct kvm_vcpu_arch_shared shregs; argument
760 struct mmio_hpte_cache mmio_cache;
761 unsigned long pgfault_addr;
762 long pgfault_index;
763 unsigned long pgfault_hpte[2];
764 struct mmio_hpte_cache_entry *pgfault_cache;
766 struct task_struct *run_task;
767 struct kvm_run *kvm_run;
769 spinlock_t vpa_update_lock;
770 struct kvmppc_vpa vpa;
771 struct kvmppc_vpa dtl;
772 struct dtl_entry *dtl_ptr;
773 unsigned long dtl_index;
774 u64 stolen_logged;
775 struct kvmppc_vpa slb_shadow;
777 spinlock_t tbacct_lock;
778 u64 busy_stolen;
779 u64 busy_preempt;
781 u32 emul_inst;
783 u32 online;
787 struct kvmhv_tb_accumulator *cur_activity; /* What we're timing */
788 u64 cur_tb_start; /* when it started */
789 struct kvmhv_tb_accumulator rm_entry; /* real-mode entry code */
790 struct kvmhv_tb_accumulator rm_intr; /* real-mode intr handling */
791 struct kvmhv_tb_accumulator rm_exit; /* real-mode exit code */
792 struct kvmhv_tb_accumulator guest_time; /* guest execution */
793 struct kvmhv_tb_accumulator cede_time; /* time napping inside guest */
795 struct dentry *debugfs_dir;
796 struct dentry *debugfs_timings;