/kernel/linux/linux-6.6/arch/arm64/kvm/hyp/nvhe/ |
H A D | hyp-main.c | 24 void __kvm_hyp_host_forward_smc(struct kvm_cpu_context *host_ctxt); 74 static void handle___kvm_vcpu_run(struct kvm_cpu_context *host_ctxt) in handle___kvm_vcpu_run() argument 76 DECLARE_REG(struct kvm_vcpu *, host_vcpu, host_ctxt, 1); in handle___kvm_vcpu_run() 105 cpu_reg(host_ctxt, 1) = ret; in handle___kvm_vcpu_run() 108 static void handle___kvm_adjust_pc(struct kvm_cpu_context *host_ctxt) in handle___kvm_adjust_pc() argument 110 DECLARE_REG(struct kvm_vcpu *, vcpu, host_ctxt, 1); in handle___kvm_adjust_pc() 115 static void handle___kvm_flush_vm_context(struct kvm_cpu_context *host_ctxt) in handle___kvm_flush_vm_context() argument 120 static void handle___kvm_tlb_flush_vmid_ipa(struct kvm_cpu_context *host_ctxt) in handle___kvm_tlb_flush_vmid_ipa() argument 122 DECLARE_REG(struct kvm_s2_mmu *, mmu, host_ctxt, 1); in handle___kvm_tlb_flush_vmid_ipa() 123 DECLARE_REG(phys_addr_t, ipa, host_ctxt, in handle___kvm_tlb_flush_vmid_ipa() 129 handle___kvm_tlb_flush_vmid_ipa_nsh(struct kvm_cpu_context *host_ctxt) handle___kvm_tlb_flush_vmid_ipa_nsh() argument 139 handle___kvm_tlb_flush_vmid_range(struct kvm_cpu_context *host_ctxt) handle___kvm_tlb_flush_vmid_range() argument 148 handle___kvm_tlb_flush_vmid(struct kvm_cpu_context *host_ctxt) handle___kvm_tlb_flush_vmid() argument 155 handle___kvm_flush_cpu_context(struct kvm_cpu_context *host_ctxt) handle___kvm_flush_cpu_context() argument 162 handle___kvm_timer_set_cntvoff(struct kvm_cpu_context *host_ctxt) handle___kvm_timer_set_cntvoff() argument 167 handle___kvm_enable_ssbs(struct kvm_cpu_context *host_ctxt) handle___kvm_enable_ssbs() argument 176 handle___vgic_v3_get_gic_config(struct kvm_cpu_context *host_ctxt) handle___vgic_v3_get_gic_config() argument 181 handle___vgic_v3_read_vmcr(struct kvm_cpu_context *host_ctxt) handle___vgic_v3_read_vmcr() argument 186 handle___vgic_v3_write_vmcr(struct kvm_cpu_context *host_ctxt) handle___vgic_v3_write_vmcr() argument 191 handle___vgic_v3_init_lrs(struct kvm_cpu_context *host_ctxt) handle___vgic_v3_init_lrs() argument 196 handle___kvm_get_mdcr_el2(struct kvm_cpu_context *host_ctxt) handle___kvm_get_mdcr_el2() argument 201 handle___vgic_v3_save_aprs(struct kvm_cpu_context *host_ctxt) handle___vgic_v3_save_aprs() argument 208 handle___vgic_v3_restore_aprs(struct kvm_cpu_context *host_ctxt) handle___vgic_v3_restore_aprs() argument 215 handle___pkvm_init(struct kvm_cpu_context *host_ctxt) handle___pkvm_init() argument 232 handle___pkvm_cpu_set_vector(struct kvm_cpu_context *host_ctxt) handle___pkvm_cpu_set_vector() argument 239 handle___pkvm_host_share_hyp(struct kvm_cpu_context *host_ctxt) handle___pkvm_host_share_hyp() argument 246 handle___pkvm_host_unshare_hyp(struct kvm_cpu_context *host_ctxt) handle___pkvm_host_unshare_hyp() argument 253 handle___pkvm_create_private_mapping(struct kvm_cpu_context *host_ctxt) handle___pkvm_create_private_mapping() argument 278 handle___pkvm_prot_finalize(struct kvm_cpu_context *host_ctxt) handle___pkvm_prot_finalize() argument 283 handle___pkvm_vcpu_init_traps(struct kvm_cpu_context *host_ctxt) handle___pkvm_vcpu_init_traps() argument 290 handle___pkvm_init_vm(struct kvm_cpu_context *host_ctxt) handle___pkvm_init_vm() argument 300 handle___pkvm_init_vcpu(struct kvm_cpu_context *host_ctxt) handle___pkvm_init_vcpu() argument 310 handle___pkvm_teardown_vm(struct kvm_cpu_context *host_ctxt) handle___pkvm_teardown_vm() argument 353 handle_host_hcall(struct kvm_cpu_context *host_ctxt) handle_host_hcall() argument 389 default_host_smc_handler(struct kvm_cpu_context *host_ctxt) default_host_smc_handler() argument 394 handle_host_smc(struct kvm_cpu_context *host_ctxt) handle_host_smc() argument 411 handle_trap(struct kvm_cpu_context *host_ctxt) handle_trap() argument [all...] |
H A D | psci-relay.c | 20 void __noreturn __host_enter(struct kvm_cpu_context *host_ctxt); 72 static unsigned long psci_forward(struct kvm_cpu_context *host_ctxt) in psci_forward() argument 74 return psci_call(cpu_reg(host_ctxt, 0), cpu_reg(host_ctxt, 1), in psci_forward() 75 cpu_reg(host_ctxt, 2), cpu_reg(host_ctxt, 3)); in psci_forward() 107 static int psci_cpu_on(u64 func_id, struct kvm_cpu_context *host_ctxt) in psci_cpu_on() argument 109 DECLARE_REG(u64, mpidr, host_ctxt, 1); in psci_cpu_on() 110 DECLARE_REG(unsigned long, pc, host_ctxt, 2); in psci_cpu_on() 111 DECLARE_REG(unsigned long, r0, host_ctxt, in psci_cpu_on() 151 psci_cpu_suspend(u64 func_id, struct kvm_cpu_context *host_ctxt) psci_cpu_suspend() argument 179 psci_system_suspend(u64 func_id, struct kvm_cpu_context *host_ctxt) psci_system_suspend() argument 206 struct kvm_cpu_context *host_ctxt; __kvm_host_psci_cpu_entry() local 224 psci_0_1_handler(u64 func_id, struct kvm_cpu_context *host_ctxt) psci_0_1_handler() argument 236 psci_0_2_handler(u64 func_id, struct kvm_cpu_context *host_ctxt) psci_0_2_handler() argument 262 psci_1_0_handler(u64 func_id, struct kvm_cpu_context *host_ctxt) psci_1_0_handler() argument 276 kvm_host_psci_handler(struct kvm_cpu_context *host_ctxt, u32 func_id) kvm_host_psci_handler() argument [all...] |
H A D | switch.c | 248 struct kvm_cpu_context *host_ctxt; in __kvm_vcpu_run() local 265 host_ctxt = &this_cpu_ptr(&kvm_host_data)->host_ctxt; in __kvm_vcpu_run() 266 host_ctxt->__hyp_running_vcpu = vcpu; in __kvm_vcpu_run() 271 __sysreg_save_state_nvhe(host_ctxt); in __kvm_vcpu_run() 336 __sysreg_restore_state_nvhe(host_ctxt); in __kvm_vcpu_run() 355 host_ctxt->__hyp_running_vcpu = NULL; in __kvm_vcpu_run() 365 struct kvm_cpu_context *host_ctxt; in hyp_panic() local 368 host_ctxt = &this_cpu_ptr(&kvm_host_data)->host_ctxt; in hyp_panic() [all...] |
H A D | ffa.c | 637 bool kvm_host_ffa_handler(struct kvm_cpu_context *host_ctxt, u32 func_id) in kvm_host_ffa_handler() argument 659 if (!do_ffa_features(&res, host_ctxt)) in kvm_host_ffa_handler() 664 do_ffa_rxtx_map(&res, host_ctxt); in kvm_host_ffa_handler() 667 do_ffa_rxtx_unmap(&res, host_ctxt); in kvm_host_ffa_handler() 671 do_ffa_mem_xfer(FFA_FN64_MEM_SHARE, &res, host_ctxt); in kvm_host_ffa_handler() 674 do_ffa_mem_reclaim(&res, host_ctxt); in kvm_host_ffa_handler() 678 do_ffa_mem_xfer(FFA_FN64_MEM_LEND, &res, host_ctxt); in kvm_host_ffa_handler() 681 do_ffa_mem_frag_tx(&res, host_ctxt); in kvm_host_ffa_handler() 690 ffa_set_retval(host_ctxt, &res); in kvm_host_ffa_handler()
|
H A D | setup.c | 261 struct kvm_cpu_context *host_ctxt = &host_data->host_ctxt; in __pkvm_init_finalise() local 309 cpu_reg(host_ctxt, 1) = ret; in __pkvm_init_finalise() 311 __host_enter(host_ctxt); in __pkvm_init_finalise()
|
/kernel/linux/linux-5.10/arch/arm64/kvm/hyp/nvhe/ |
H A D | hyp-main.c | 18 struct kvm_cpu_context *host_ctxt) in handle_host_hcall() 24 unsigned long r1 = host_ctxt->regs.regs[1]; in handle_host_hcall() 34 unsigned long r1 = host_ctxt->regs.regs[1]; in handle_host_hcall() 36 phys_addr_t ipa = host_ctxt->regs.regs[2]; in handle_host_hcall() 37 int level = host_ctxt->regs.regs[3]; in handle_host_hcall() 43 unsigned long r1 = host_ctxt->regs.regs[1]; in handle_host_hcall() 50 unsigned long r1 = host_ctxt->regs.regs[1]; in handle_host_hcall() 57 u64 cntvoff = host_ctxt->regs.regs[1]; in handle_host_hcall() 72 u32 vmcr = host_ctxt->regs.regs[1]; in handle_host_hcall() 84 unsigned long r1 = host_ctxt in handle_host_hcall() 17 handle_host_hcall(unsigned long func_id, struct kvm_cpu_context *host_ctxt) handle_host_hcall() argument 107 handle_trap(struct kvm_cpu_context *host_ctxt) handle_trap() argument [all...] |
H A D | switch.c | 130 static bool __pmu_switch_to_guest(struct kvm_cpu_context *host_ctxt) in __pmu_switch_to_guest() argument 135 host = container_of(host_ctxt, struct kvm_host_data, host_ctxt); in __pmu_switch_to_guest() 150 static void __pmu_switch_to_host(struct kvm_cpu_context *host_ctxt) in __pmu_switch_to_host() argument 155 host = container_of(host_ctxt, struct kvm_host_data, host_ctxt); in __pmu_switch_to_host() 168 struct kvm_cpu_context *host_ctxt; in __kvm_vcpu_run() local 184 host_ctxt = &this_cpu_ptr(&kvm_host_data)->host_ctxt; in __kvm_vcpu_run() 185 host_ctxt in __kvm_vcpu_run() 263 struct kvm_cpu_context *host_ctxt; hyp_panic() local [all...] |
/kernel/linux/linux-5.10/arch/arm64/kvm/hyp/vhe/ |
H A D | sysreg-sr.c | 67 struct kvm_cpu_context *host_ctxt; in kvm_vcpu_load_sysregs_vhe() local 69 host_ctxt = &this_cpu_ptr(&kvm_host_data)->host_ctxt; in kvm_vcpu_load_sysregs_vhe() 70 __sysreg_save_user_state(host_ctxt); in kvm_vcpu_load_sysregs_vhe() 101 struct kvm_cpu_context *host_ctxt; in kvm_vcpu_put_sysregs_vhe() local 103 host_ctxt = &this_cpu_ptr(&kvm_host_data)->host_ctxt; in kvm_vcpu_put_sysregs_vhe() 111 __sysreg_restore_user_state(host_ctxt); in kvm_vcpu_put_sysregs_vhe()
|
H A D | switch.c | 117 struct kvm_cpu_context *host_ctxt; in __kvm_vcpu_run_vhe() local 121 host_ctxt = &this_cpu_ptr(&kvm_host_data)->host_ctxt; in __kvm_vcpu_run_vhe() 122 host_ctxt->__hyp_running_vcpu = vcpu; in __kvm_vcpu_run_vhe() 125 sysreg_save_host_state_vhe(host_ctxt); in __kvm_vcpu_run_vhe() 155 sysreg_restore_host_state_vhe(host_ctxt); in __kvm_vcpu_run_vhe() 203 struct kvm_cpu_context *host_ctxt; in __hyp_call_panic() local 206 host_ctxt = &this_cpu_ptr(&kvm_host_data)->host_ctxt; in __hyp_call_panic() 207 vcpu = host_ctxt in __hyp_call_panic() [all...] |
/kernel/linux/linux-6.6/arch/arm64/kvm/hyp/vhe/ |
H A D | sysreg-sr.c | 68 struct kvm_cpu_context *host_ctxt; in kvm_vcpu_load_sysregs_vhe() local 70 host_ctxt = &this_cpu_ptr(&kvm_host_data)->host_ctxt; in kvm_vcpu_load_sysregs_vhe() 71 __sysreg_save_user_state(host_ctxt); in kvm_vcpu_load_sysregs_vhe() 113 struct kvm_cpu_context *host_ctxt; in kvm_vcpu_put_sysregs_vhe() local 115 host_ctxt = &this_cpu_ptr(&kvm_host_data)->host_ctxt; in kvm_vcpu_put_sysregs_vhe() 123 __sysreg_restore_user_state(host_ctxt); in kvm_vcpu_put_sysregs_vhe()
|
H A D | switch.c | 206 struct kvm_cpu_context *host_ctxt; in __kvm_vcpu_run_vhe() local 210 host_ctxt = &this_cpu_ptr(&kvm_host_data)->host_ctxt; in __kvm_vcpu_run_vhe() 211 host_ctxt->__hyp_running_vcpu = vcpu; in __kvm_vcpu_run_vhe() 214 sysreg_save_host_state_vhe(host_ctxt); in __kvm_vcpu_run_vhe() 251 sysreg_restore_host_state_vhe(host_ctxt); in __kvm_vcpu_run_vhe() 298 struct kvm_cpu_context *host_ctxt; in __hyp_call_panic() local 301 host_ctxt = &this_cpu_ptr(&kvm_host_data)->host_ctxt; in __hyp_call_panic() 302 vcpu = host_ctxt in __hyp_call_panic() [all...] |
/kernel/linux/linux-6.6/arch/arm64/kvm/hyp/include/hyp/ |
H A D | debug-sr.h | 130 struct kvm_cpu_context *host_ctxt; in __debug_switch_to_guest_common() local 138 host_ctxt = &this_cpu_ptr(&kvm_host_data)->host_ctxt; in __debug_switch_to_guest_common() 143 __debug_save_state(host_dbg, host_ctxt); in __debug_switch_to_guest_common() 149 struct kvm_cpu_context *host_ctxt; in __debug_switch_to_host_common() local 157 host_ctxt = &this_cpu_ptr(&kvm_host_data)->host_ctxt; in __debug_switch_to_host_common() 163 __debug_restore_state(host_dbg, host_ctxt); in __debug_switch_to_host_common()
|
H A D | switch.h | 84 struct kvm_cpu_context *hctxt = &this_cpu_ptr(&kvm_host_data)->host_ctxt; in __activate_traps_hfgxtr() 159 struct kvm_cpu_context *hctxt = &this_cpu_ptr(&kvm_host_data)->host_ctxt; in __deactivate_traps_hfgxtr() 191 hctxt = &this_cpu_ptr(&kvm_host_data)->host_ctxt; in __activate_traps_common() 225 hctxt = &this_cpu_ptr(&kvm_host_data)->host_ctxt; in __deactivate_traps_common()
|
/kernel/linux/linux-5.10/arch/arm64/kvm/hyp/include/hyp/ |
H A D | debug-sr.h | 130 struct kvm_cpu_context *host_ctxt; in __debug_switch_to_guest_common() local 138 host_ctxt = &this_cpu_ptr(&kvm_host_data)->host_ctxt; in __debug_switch_to_guest_common() 143 __debug_save_state(host_dbg, host_ctxt); in __debug_switch_to_guest_common() 149 struct kvm_cpu_context *host_ctxt; in __debug_switch_to_host_common() local 157 host_ctxt = &this_cpu_ptr(&kvm_host_data)->host_ctxt; in __debug_switch_to_host_common() 163 __debug_restore_state(host_dbg, host_ctxt); in __debug_switch_to_host_common()
|
/kernel/linux/linux-6.6/arch/arm64/include/asm/ |
H A D | kvm_hyp.h | 121 bool kvm_host_psci_handler(struct kvm_cpu_context *host_ctxt, u32 func_id); 124 void __noreturn __hyp_do_panic(struct kvm_cpu_context *host_ctxt, u64 spsr, 133 void __noreturn __host_enter(struct kvm_cpu_context *host_ctxt);
|
H A D | kvm_asm.h | 283 void handle_trap(struct kvm_cpu_context *host_ctxt);
|
H A D | kvm_host.h | 434 struct kvm_cpu_context host_ctxt; member
|
/kernel/linux/linux-6.6/arch/arm64/kvm/hyp/include/nvhe/ |
H A D | ffa.h | 15 bool kvm_host_ffa_handler(struct kvm_cpu_context *host_ctxt, u32 func_id);
|
H A D | mem_protect.h | 78 void handle_host_mem_abort(struct kvm_cpu_context *host_ctxt);
|
/kernel/linux/linux-5.10/arch/arm64/include/asm/ |
H A D | kvm_hyp.h | 102 void __noreturn __hyp_do_panic(struct kvm_cpu_context *host_ctxt, u64 spsr,
|
H A D | kvm_host.h | 273 struct kvm_cpu_context host_ctxt; member
|
/kernel/linux/linux-6.6/arch/arm64/kvm/ |
H A D | pmu.c | 235 hctxt = &this_cpu_ptr(&kvm_host_data)->host_ctxt; in kvm_set_pmuserenr()
|
/kernel/linux/linux-5.10/arch/arm64/kernel/ |
H A D | asm-offsets.c | 114 DEFINE(HOST_DATA_CONTEXT, offsetof(struct kvm_host_data, host_ctxt)); in main()
|
/kernel/linux/linux-6.6/arch/arm64/kernel/ |
H A D | asm-offsets.c | 141 DEFINE(HOST_DATA_CONTEXT, offsetof(struct kvm_host_data, host_ctxt)); in main()
|
/kernel/linux/linux-5.10/arch/arm64/kvm/ |
H A D | arm.c | 1417 kvm_init_host_cpu_context(&this_cpu_ptr_hyp_sym(kvm_host_data)->host_ctxt); in cpu_hyp_reinit()
|