Home
last modified time | relevance | path

Searched refs:svm (Results 1 – 25 of 45) sorted by relevance

12

/linux-6.15/arch/x86/kvm/svm/
H A Dnested.c236 svm->nested.msrpm[p] = svm->msrpm[p] | value; in nested_svm_vmrun_msrpm()
729 svm->soft_int_next_rip = svm->nested.ctl.next_rip; in nested_vmcb02_prepare_control()
815 WARN_ON(svm->vmcb == svm->nested.vmcb02.ptr); in enter_svm_guest_mode()
819 svm_switch_vmcb(svm, &svm->nested.vmcb02); in enter_svm_guest_mode()
1044 svm_switch_vmcb(svm, &svm->vmcb01); in nested_svm_vmexit()
1197 svm_vcpu_init_msrpm(&svm->vcpu, svm->nested.msrpm); in svm_allocate_nested()
1212 if (WARN_ON_ONCE(svm->vmcb != svm->vmcb01.ptr)) in svm_free_nested()
1213 svm_switch_vmcb(svm, &svm->vmcb01); in svm_free_nested()
1243 svm_switch_vmcb(svm, &svm->vmcb01); in svm_leave_nested()
1758 svm_switch_vmcb(svm, &svm->nested.vmcb02); in svm_set_nested_state()
[all …]
H A Dsvm.c385 svm->next_rip = svm->vmcb->control.next_rip; in __svm_skip_emulated_instruction()
445 svm->soft_int_csbase = svm->vmcb->save.cs.base; in svm_update_soft_interrupt_rip()
912 set_msr_interception(&svm->vcpu, svm->msrpm, index, in svm_set_x2apic_msr_interception()
1012 svm_copy_lbrs(svm->vmcb, svm->vmcb01.ptr); in svm_enable_lbrv()
1032 svm_copy_lbrs(svm->vmcb01.ptr, svm->vmcb); in svm_disable_lbrv()
1469 svm_switch_vmcb(svm, &svm->vmcb01); in svm_vcpu_create()
2176 svm->vmcb->save.cs.base + svm->vmcb->save.rip; in db_interception()
2321 svm->next_rip = svm->vmcb->control.exit_info_2; in io_interception()
4164 svm->vmcb->control.next_rip = svm->soft_int_next_rip; in svm_complete_soft_interrupt()
4362 if (unlikely(svm->asid != svm->vmcb->control.asid)) { in svm_vcpu_run()
[all …]
H A Dsvm.h460 recalc_intercepts(svm); in set_exception_intercept()
470 recalc_intercepts(svm); in clr_exception_intercept()
479 recalc_intercepts(svm); in svm_set_intercept()
488 recalc_intercepts(svm); in svm_clr_intercept()
507 if (is_guest_mode(&svm->vcpu) && !nested_vgif_enabled(svm)) in get_vgif_vmcb()
510 return svm->vmcb01.ptr; in get_vgif_vmcb()
520 svm->guest_gif = true; in enable_gif()
530 svm->guest_gif = false; in disable_gif()
540 return svm->guest_gif; in gif_set()
568 if (is_guest_mode(&svm->vcpu)) in get_vnmi_vmcb_l1()
[all …]
H A Davic.c257 avic_activate_vmcb(svm); in avic_init_vmcb()
259 avic_deactivate_vmcb(svm); in avic_init_vmcb()
620 if (ldr == svm->ldr_reg) in avic_handle_ldr_update()
625 svm->ldr_reg = ldr; in avic_handle_ldr_update()
634 if (svm->dfr_reg == dfr) in avic_handle_dfr_update()
638 svm->dfr_reg = dfr; in avic_handle_dfr_update()
733 svm->dfr_reg = APIC_DFR_FLAT; in avic_init_vcpu()
881 *svm = to_svm(vcpu); in get_pi_vcpu_info()
961 if (!ret && svm) { in avic_pi_update_irte()
1135 avic_activate_vmcb(svm); in avic_refresh_virtual_apic_mode()
[all …]
H A Dsev.c807 if (svm->vcpu.guest_debug || (svm->vmcb->save.dr7 & ~DR7_FIXED_1)) in sev_es_sync_vmsa()
816 memcpy(save, &svm->vmcb->save, sizeof(svm->vmcb->save)); in sev_es_sync_vmsa()
3261 svm->vmcb->save.cpl = kvm_ghcb_get_cpl_if_valid(svm, ghcb); in sev_es_sync_from_ghcb()
3416 dump_ghcb(svm); in sev_es_validate_vmgexit()
3452 trace_kvm_vmgexit_exit(svm->vcpu.vcpu_id, svm->sev_es.ghcb); in sev_es_unmap_ghcb()
3456 kvm_vcpu_unmap(&svm->vcpu, &svm->sev_es.ghcb_map); in sev_es_unmap_ghcb()
3694 for (idx = svm->sev_es.psc_idx; svm->sev_es.psc_inflight; in __snp_complete_one_psc()
4274 svm->sev_es.ghcb = svm->sev_es.ghcb_map.hva; in sev_handle_vmgexit()
4362 ret = snp_begin_psc(svm, svm->sev_es.ghcb_sa); in sev_handle_vmgexit()
4470 if (svm->sev_es.vmsa && !svm->sev_es.snp_has_guest_vmsa) in sev_es_init_vmcb()
[all …]
H A Dhyperv.c11 struct vcpu_svm *svm = to_svm(vcpu); in svm_hv_inject_synthetic_vmexit_post_tlb_flush() local
13 svm->vmcb->control.exit_code = HV_SVM_EXITCODE_ENL; in svm_hv_inject_synthetic_vmexit_post_tlb_flush()
14 svm->vmcb->control.exit_code_hi = 0; in svm_hv_inject_synthetic_vmexit_post_tlb_flush()
15 svm->vmcb->control.exit_info_1 = HV_SVM_ENL_EXITCODE_TRAP_AFTER_FLUSH; in svm_hv_inject_synthetic_vmexit_post_tlb_flush()
16 svm->vmcb->control.exit_info_2 = 0; in svm_hv_inject_synthetic_vmexit_post_tlb_flush()
17 nested_svm_vmexit(svm); in svm_hv_inject_synthetic_vmexit_post_tlb_flush()
H A Dhyperv.h17 struct vcpu_svm *svm = to_svm(vcpu); in nested_svm_hv_update_vm_vp_ids() local
18 struct hv_vmcb_enlightenments *hve = &svm->nested.ctl.hv_enlightenments; in nested_svm_hv_update_vm_vp_ids()
31 struct vcpu_svm *svm = to_svm(vcpu); in nested_svm_l2_tlb_flush_enabled() local
32 struct hv_vmcb_enlightenments *hve = &svm->nested.ctl.hv_enlightenments; in nested_svm_l2_tlb_flush_enabled()
/linux-6.15/tools/testing/selftests/kvm/lib/x86/
H A Dsvm.c37 svm->vmcb_hva = addr_gva2hva(vm, (uintptr_t)svm->vmcb); in vcpu_alloc_svm()
38 svm->vmcb_gpa = addr_gva2gpa(vm, (uintptr_t)svm->vmcb); in vcpu_alloc_svm()
41 svm->save_area_hva = addr_gva2hva(vm, (uintptr_t)svm->save_area); in vcpu_alloc_svm()
42 svm->save_area_gpa = addr_gva2gpa(vm, (uintptr_t)svm->save_area); in vcpu_alloc_svm()
45 svm->msr_hva = addr_gva2hva(vm, (uintptr_t)svm->msr); in vcpu_alloc_svm()
46 svm->msr_gpa = addr_gva2gpa(vm, (uintptr_t)svm->msr); in vcpu_alloc_svm()
50 return svm; in vcpu_alloc_svm()
64 struct vmcb *vmcb = svm->vmcb; in generic_svm_setup()
65 uint64_t vmcb_gpa = svm->vmcb_gpa; in generic_svm_setup()
100 ctrl->msrpm_base_pa = svm->msr_gpa; in generic_svm_setup()
[all …]
/linux-6.15/drivers/gpu/drm/nouveau/
H A Dnouveau_svm.c325 if (!cli->drm->svm) in nouveau_svmm_init()
1024 struct nouveau_svm *svm = drm->svm; in nouveau_svm_resume() local
1025 if (svm) in nouveau_svm_resume()
1032 struct nouveau_svm *svm = drm->svm; in nouveau_svm_suspend() local
1033 if (svm) in nouveau_svm_suspend()
1040 struct nouveau_svm *svm = drm->svm; in nouveau_svm_fini() local
1041 if (svm) { in nouveau_svm_fini()
1043 kfree(drm->svm); in nouveau_svm_fini()
1044 drm->svm = NULL; in nouveau_svm_fini()
1066 drm->svm = svm = kzalloc(struct_size(drm->svm, buffer, 1), GFP_KERNEL); in nouveau_svm_init()
[all …]
/linux-6.15/tools/testing/selftests/kvm/x86/
H A Dhyperv_svm_test.c73 struct vmcb *vmcb = svm->vmcb; in guest_code()
82 GUEST_ASSERT(svm->vmcb_gpa); in guest_code()
84 generic_svm_setup(svm, l2_guest_code, in guest_code()
96 run_guest(vmcb, svm->vmcb_gpa); in guest_code()
104 run_guest(vmcb, svm->vmcb_gpa); in guest_code()
110 run_guest(vmcb, svm->vmcb_gpa); in guest_code()
118 run_guest(vmcb, svm->vmcb_gpa); in guest_code()
125 run_guest(vmcb, svm->vmcb_gpa); in guest_code()
134 run_guest(vmcb, svm->vmcb_gpa); in guest_code()
139 run_guest(vmcb, svm->vmcb_gpa); in guest_code()
[all …]
H A Dnested_exceptions_test.c74 static void svm_run_l2(struct svm_test_data *svm, void *l2_code, int vector, in svm_run_l2() argument
77 struct vmcb *vmcb = svm->vmcb; in svm_run_l2()
81 run_guest(vmcb, svm->vmcb_gpa); in svm_run_l2()
91 static void l1_svm_code(struct svm_test_data *svm) in l1_svm_code() argument
93 struct vmcb_control_area *ctrl = &svm->vmcb->control; in l1_svm_code()
96 generic_svm_setup(svm, NULL, &l2_guest_stack[L2_GUEST_STACK_SIZE]); in l1_svm_code()
97 svm->vmcb->save.idtr.limit = 0; in l1_svm_code()
101 svm_run_l2(svm, l2_ss_pending_test, SS_VECTOR, SS_ERROR_CODE); in l1_svm_code()
102 svm_run_l2(svm, l2_ss_injected_gp_test, GP_VECTOR, GP_ERROR_CODE_AMD); in l1_svm_code()
105 svm_run_l2(svm, l2_ss_injected_df_test, DF_VECTOR, DF_ERROR_CODE); in l1_svm_code()
[all …]
H A Dsvm_nested_shutdown_test.c15 static void l2_guest_code(struct svm_test_data *svm) in l2_guest_code() argument
20 static void l1_guest_code(struct svm_test_data *svm, struct idt_entry *idt) in l1_guest_code() argument
24 struct vmcb *vmcb = svm->vmcb; in l1_guest_code()
26 generic_svm_setup(svm, l2_guest_code, in l1_guest_code()
36 run_guest(vmcb, svm->vmcb_gpa); in l1_guest_code()
H A Dsvm_vmcall_test.c15 static void l2_guest_code(struct svm_test_data *svm) in l2_guest_code() argument
20 static void l1_guest_code(struct svm_test_data *svm) in l1_guest_code() argument
24 struct vmcb *vmcb = svm->vmcb; in l1_guest_code()
27 generic_svm_setup(svm, l2_guest_code, in l1_guest_code()
30 run_guest(vmcb, svm->vmcb_gpa); in l1_guest_code()
H A Dsvm_int_ctl_test.c33 static void l2_guest_code(struct svm_test_data *svm) in l2_guest_code() argument
55 static void l1_guest_code(struct svm_test_data *svm) in l1_guest_code() argument
59 struct vmcb *vmcb = svm->vmcb; in l1_guest_code()
64 generic_svm_setup(svm, l2_guest_code, in l1_guest_code()
77 run_guest(vmcb, svm->vmcb_gpa); in l1_guest_code()
H A Dsmm_test.c71 struct svm_test_data *svm = arg; in guest_code() local
86 generic_svm_setup(svm, l2_guest_code, in guest_code()
102 run_guest(svm->vmcb, svm->vmcb_gpa); in guest_code()
103 run_guest(svm->vmcb, svm->vmcb_gpa); in guest_code()
H A Dnested_emulation_test.c57 struct svm_test_data *svm = test_data; in guest_code() local
58 struct vmcb *vmcb = svm->vmcb; in guest_code()
60 generic_svm_setup(svm, NULL, NULL); in guest_code()
97 struct svm_test_data *svm = test_data; in guest_code() local
98 struct vmcb *vmcb = svm->vmcb; in guest_code()
100 run_guest(vmcb, svm->vmcb_gpa); in guest_code()
H A Dtriple_fault_event_test.c43 void l1_guest_code_svm(struct svm_test_data *svm) in l1_guest_code_svm() argument
45 struct vmcb *vmcb = svm->vmcb; in l1_guest_code_svm()
47 generic_svm_setup(svm, l2_guest_code, in l1_guest_code_svm()
53 run_guest(vmcb, svm->vmcb_gpa); in l1_guest_code_svm()
H A Dsvm_nested_soft_inject_test.c79 static void l1_guest_code(struct svm_test_data *svm, uint64_t is_nmi, uint64_t idt_alt) in l1_guest_code() argument
83 struct vmcb *vmcb = svm->vmcb; in l1_guest_code()
89 generic_svm_setup(svm, in l1_guest_code()
104 run_guest(vmcb, svm->vmcb_gpa); in l1_guest_code()
134 run_guest(vmcb, svm->vmcb_gpa); in l1_guest_code()
H A Dstate_test.c34 static void svm_l1_guest_code(struct svm_test_data *svm) in svm_l1_guest_code() argument
37 struct vmcb *vmcb = svm->vmcb; in svm_l1_guest_code()
39 GUEST_ASSERT(svm->vmcb_gpa); in svm_l1_guest_code()
41 generic_svm_setup(svm, svm_l2_guest_code, in svm_l1_guest_code()
45 run_guest(vmcb, svm->vmcb_gpa); in svm_l1_guest_code()
49 run_guest(vmcb, svm->vmcb_gpa); in svm_l1_guest_code()
/linux-6.15/arch/x86/kvm/
H A DMakefile24 kvm-amd-y += svm/svm.o svm/vmenter.o svm/pmu.o svm/nested.o svm/avic.o
26 kvm-amd-$(CONFIG_KVM_AMD_SEV) += svm/sev.o
27 kvm-amd-$(CONFIG_KVM_HYPERV) += svm/hyperv.o
32 kvm-amd-y += svm/svm_onhyperv.o
40 $(obj)/svm/vmenter.o: $(obj)/kvm-asm-offsets.h
/linux-6.15/arch/arm/mm/
H A Dioremap.c53 struct static_vm *svm; in find_static_vm_paddr() local
57 vm = &svm->vm; in find_static_vm_paddr()
67 return svm; in find_static_vm_paddr()
75 struct static_vm *svm; in find_static_vm_vaddr() local
79 vm = &svm->vm; in find_static_vm_vaddr()
86 return svm; in find_static_vm_vaddr()
98 vm = &svm->vm; in add_static_vm_early()
304 struct static_vm *svm; in __arm_ioremap_pfn_caller() local
307 if (svm) { in __arm_ioremap_pfn_caller()
449 struct static_vm *svm; in iounmap() local
[all …]
H A Dmmu.c1020 struct static_vm *svm; in iotable_init() local
1025 svm = memblock_alloc_or_panic(sizeof(*svm) * nr, __alignof__(*svm)); in iotable_init()
1030 vm = &svm->vm; in iotable_init()
1045 struct static_vm *svm; in vm_reserve_area_early() local
1047 svm = memblock_alloc_or_panic(sizeof(*svm), __alignof__(*svm)); in vm_reserve_area_early()
1049 vm = &svm->vm; in vm_reserve_area_early()
1054 add_static_vm_early(svm); in vm_reserve_area_early()
1079 struct static_vm *svm; in fill_pmd_gaps() local
1085 vm = &svm->vm; in fill_pmd_gaps()
1125 struct static_vm *svm; in pci_reserve_io() local
[all …]
/linux-6.15/drivers/gpu/drm/xe/
H A Dxe_svm.c120 spin_lock(&vm->svm.garbage_collector.lock); in xe_svm_garbage_collector_add_range()
123 &vm->svm.garbage_collector.range_list); in xe_svm_garbage_collector_add_range()
124 spin_unlock(&vm->svm.garbage_collector.lock); in xe_svm_garbage_collector_add_range()
127 &vm->svm.garbage_collector.work); in xe_svm_garbage_collector_add_range()
314 spin_lock(&vm->svm.garbage_collector.lock); in xe_svm_garbage_collector()
334 spin_lock(&vm->svm.garbage_collector.lock); in xe_svm_garbage_collector()
344 svm.garbage_collector.work); in xe_svm_garbage_collector_work_func()
615 INIT_WORK(&vm->svm.garbage_collector.work, in xe_svm_init()
653 drm_gpusvm_fini(&vm->svm.gpusvm); in xe_svm_fini()
678 struct mm_struct *mm = vm->svm.gpusvm.mm; in xe_svm_alloc_vram()
[all …]
H A Dxe_svm.h145 lockdep_assert_held_write(&(vm__)->svm.gpusvm.notifier_lock)
148 drm_gpusvm_notifier_lock(&(vm__)->svm.gpusvm)
151 drm_gpusvm_notifier_unlock(&(vm__)->svm.gpusvm)
/linux-6.15/tools/testing/vsock/
H A Dvsock_perf.c104 struct sockaddr_vm svm; in vsock_connect() member
106 .svm = { in vsock_connect()
121 if (connect(fd, &addr.sa, sizeof(addr.svm)) < 0) { in vsock_connect()
147 struct sockaddr_vm svm; in run_receiver() member
149 .svm = { in run_receiver()
157 struct sockaddr_vm svm; in run_receiver() member
160 socklen_t clientaddr_len = sizeof(clientaddr.svm); in run_receiver()
173 if (bind(fd, &addr.sa, sizeof(addr.svm)) < 0) in run_receiver()

12