Lines Matching defs:svm_sc
564 struct svm_softc *svm_sc;
566 svm_sc = malloc(sizeof (*svm_sc), M_SVM, M_WAITOK | M_ZERO);
568 svm_sc->msr_bitmap = contigmalloc(SVM_MSR_BITMAP_SIZE, M_SVM,
570 if (svm_sc->msr_bitmap == NULL)
572 svm_sc->iopm_bitmap = contigmalloc(SVM_IO_BITMAP_SIZE, M_SVM,
574 if (svm_sc->iopm_bitmap == NULL)
577 svm_sc->vm = vm;
578 svm_sc->nptp = vtophys(pmap->pm_pmltop);
583 memset(svm_sc->msr_bitmap, 0xFF, SVM_MSR_BITMAP_SIZE);
590 svm_msr_rw_ok(svm_sc->msr_bitmap, MSR_GSBASE);
591 svm_msr_rw_ok(svm_sc->msr_bitmap, MSR_FSBASE);
592 svm_msr_rw_ok(svm_sc->msr_bitmap, MSR_KGSBASE);
594 svm_msr_rw_ok(svm_sc->msr_bitmap, MSR_STAR);
595 svm_msr_rw_ok(svm_sc->msr_bitmap, MSR_LSTAR);
596 svm_msr_rw_ok(svm_sc->msr_bitmap, MSR_CSTAR);
597 svm_msr_rw_ok(svm_sc->msr_bitmap, MSR_SF_MASK);
598 svm_msr_rw_ok(svm_sc->msr_bitmap, MSR_SYSENTER_CS_MSR);
599 svm_msr_rw_ok(svm_sc->msr_bitmap, MSR_SYSENTER_ESP_MSR);
600 svm_msr_rw_ok(svm_sc->msr_bitmap, MSR_SYSENTER_EIP_MSR);
601 svm_msr_rw_ok(svm_sc->msr_bitmap, MSR_PAT);
603 svm_msr_rd_ok(svm_sc->msr_bitmap, MSR_TSC);
608 svm_msr_rd_ok(svm_sc->msr_bitmap, MSR_EFER);
611 memset(svm_sc->iopm_bitmap, 0xFF, SVM_IO_BITMAP_SIZE);
613 return (svm_sc);
996 svm_save_intinfo(struct svm_softc *svm_sc, struct svm_vcpu *vcpu)
1331 svm_vmexit(struct svm_softc *svm_sc, struct svm_vcpu *vcpu,
1377 svm_save_intinfo(svm_sc, vcpu);
1547 if (emulate_wrmsr(svm_sc, vcpu, ecx, val, &retu)) {
1703 svm_inj_intinfo(struct svm_softc *svm_sc, struct svm_vcpu *vcpu)
2109 struct svm_softc *svm_sc;
2120 svm_sc = vcpu->sc;
2209 svm_inj_interrupts(svm_sc, vcpu, vlapic);
2246 handled = svm_vmexit(svm_sc, vcpu, vmexit);