Home
last modified time | relevance | path

Searched refs:sve_state (Results 1 – 12 of 12) sorted by relevance

/linux/arch/arm64/kvm/
H A Dreset.c93 * vcpu->arch.sve_state as necessary.
124 vcpu->arch.sve_state = buf; in kvm_vcpu_finalize_sve()
155 void *sve_state = vcpu->arch.sve_state; in kvm_arm_vcpu_destroy() local
158 if (sve_state) in kvm_arm_vcpu_destroy()
159 kvm_unshare_hyp(sve_state, sve_state + vcpu_sve_state_size(vcpu)); in kvm_arm_vcpu_destroy()
160 kfree(sve_state); in kvm_arm_vcpu_destroy()
169 memset(vcpu->arch.sve_state, 0, vcpu_sve_state_size(vcpu)); in kvm_vcpu_reset_sve()
H A Dfpsimd.c77 fp_state.sve_state = vcpu->arch.sve_state; in kvm_arch_vcpu_ctxsync_fp()
H A Darm.c2365 struct cpu_sve_state *sve_state; in teardown_hyp_mode() local
2367 sve_state = per_cpu_ptr_nvhe_sym(kvm_host_data, cpu)->sve_state; in teardown_hyp_mode()
2368 free_pages((unsigned long) sve_state, pkvm_host_sve_state_order()); in teardown_hyp_mode()
2489 per_cpu_ptr_nvhe_sym(kvm_host_data, cpu)->sve_state = page_address(page); in init_pkvm_host_sve_state()
2510 struct cpu_sve_state *sve_state; in finalize_init_hyp_mode() local
2512 sve_state = per_cpu_ptr_nvhe_sym(kvm_host_data, cpu)->sve_state; in finalize_init_hyp_mode()
2513 per_cpu_ptr_nvhe_sym(kvm_host_data, cpu)->sve_state = in finalize_init_hyp_mode()
2514 kern_hyp_va(sve_state); in finalize_init_hyp_mode()
[all...]
H A Dguest.c348 if (WARN_ON(vcpu->arch.sve_state)) in set_sve_vls()
377 /* vcpu->arch.sve_state will be alloc'd by kvm_vcpu_finalize_sve() */ in set_sve_vls()
407 /* Bounds of a single SVE register slice within vcpu->arch.sve_state */
409 unsigned int koffset; /* offset into sve_state in kernel memory */
503 if (copy_to_user(uptr, vcpu->arch.sve_state + region.koffset, in get_sve_reg()
529 if (copy_from_user(vcpu->arch.sve_state + region.koffset, uptr, in set_sve_reg()
/linux/arch/arm64/kernel/
H A Dfpsimd.c275 * allocated in sve_state and sme_state to store the contents of both ZA
322 * task->thread.sve_state does not need to be non-NULL, valid or any
331 * task->thread.sve_state, formatted appropriately for vector
336 * task->thread.sve_state must point to a valid buffer at least
498 sve_save_state((char *)last->sve_state + in fpsimd_save_user_state()
611 #define ZREG(sve_state, vq, n) ((char *)(sve_state) + \ argument
645 * task->thread.sve_state.
650 * task->thread.sve_state must point to at least sve_state_size(task)
658 void *sst = task->thread.sve_state; in fpsimd_to_sve()
799 void *sve_state = NULL, *sme_state = NULL; change_live_vector_length() local
1603 void *sve_state = NULL; fpsimd_flush_thread() local
[all...]
H A Dprocess.c359 * Drop stale reference to src's sve_state and convert dst to in arch_dup_task_struct()
363 dst->thread.sve_state = NULL; in arch_dup_task_struct()
388 dst->thread.sve_state = kzalloc(sve_state_size(src), in copy_thread_za()
390 if (!dst->thread.sve_state) in copy_thread_za()
397 kfree(dst->thread.sve_state); in copy_thread_za()
398 dst->thread.sve_state = NULL; in copy_thread_za()
/linux/arch/arm64/kvm/hyp/nvhe/
H A Dpkvm.c377 void *sve_state; in unpin_host_sve_state() local
382 sve_state = kern_hyp_va(hyp_vcpu->vcpu.arch.sve_state); in unpin_host_sve_state()
383 hyp_unpin_shared_mem(sve_state, in unpin_host_sve_state()
384 sve_state + vcpu_sve_state_size(&hyp_vcpu->vcpu)); in unpin_host_sve_state()
419 void *sve_state; in pkvm_vcpu_init_sve() local
430 sve_state = kern_hyp_va(READ_ONCE(host_vcpu->arch.sve_state)); in pkvm_vcpu_init_sve()
432 if (!sve_state || !sve_state_size) { in pkvm_vcpu_init_sve()
437 ret = hyp_pin_shared_mem(sve_state, sve_stat in pkvm_vcpu_init_sve()
[all...]
H A Dsetup.c85 struct cpu_sve_state *sve_state = host_data->sve_state; in pkvm_create_host_sve_mappings() local
87 start = kern_hyp_va(sve_state); in pkvm_create_host_sve_mappings()
H A Dhyp-main.c42 struct cpu_sve_state *sve_state = *host_data_ptr(sve_state); in __hyp_sve_restore_host() local
54 __sve_restore_state(sve_state->sve_regs + sve_ffr_offset(kvm_host_sve_max_vl), in __hyp_sve_restore_host()
55 &sve_state->fpsr, in __hyp_sve_restore_host()
57 write_sysreg_el1(sve_state->zcr_el1, SYS_ZCR); in __hyp_sve_restore_host()
/linux/arch/arm64/kvm/hyp/include/hyp/
H A Dswitch.h577 struct cpu_sve_state *sve_state = *host_data_ptr(sve_state); in __hyp_sve_save_host() local
579 sve_state->zcr_el1 = read_sysreg_el1(SYS_ZCR); in __hyp_sve_save_host()
581 __sve_save_state(sve_state->sve_regs + sve_ffr_offset(kvm_host_sve_max_vl), in __hyp_sve_save_host()
582 &sve_state->fpsr, in __hyp_sve_save_host()
/linux/arch/arm64/include/asm/
H A Dfpsimd.h86 void *sve_state; member
134 return (char *)thread->sve_state + sve_ffr_offset(vl); in sve_pffr()
H A Dprocessor.h167 void *sve_state; /* SVE registers, if any */ member