Lines Matching refs:current

389 		switch (current->thread.fp_type) {  in task_fpsimd_load()
396 if (!thread_sm_enabled(&current->thread) && in task_fpsimd_load()
401 sve_set_vq(sve_vq_from_vl(task_get_sve_vl(current)) - 1); in task_fpsimd_load()
423 unsigned long sme_vl = task_get_sme_vl(current); in task_fpsimd_load()
429 write_sysreg_s(current->thread.svcr, SYS_SVCR); in task_fpsimd_load()
431 if (thread_za_enabled(&current->thread)) in task_fpsimd_load()
432 sme_load_state(current->thread.sme_state, in task_fpsimd_load()
435 if (thread_sm_enabled(&current->thread)) in task_fpsimd_load()
440 WARN_ON_ONCE(current->thread.fp_type != FP_STATE_SVE); in task_fpsimd_load()
441 sve_load_state(sve_pffr(&current->thread), in task_fpsimd_load()
442 &current->thread.uw.fpsimd_state.fpsr, in task_fpsimd_load()
445 WARN_ON_ONCE(current->thread.fp_type != FP_STATE_FPSIMD); in task_fpsimd_load()
446 fpsimd_load_state(&current->thread.uw.fpsimd_state); in task_fpsimd_load()
890 if (task == current) { in vec_set_vector_length()
918 if (task == current) in vec_set_vector_length()
956 ret = task_get_vl_onexec(current, type); in vec_prctl_status()
958 ret = task_get_vl(current, type); in vec_prctl_status()
978 ret = vec_set_vector_length(current, ARM64_VEC_SVE, vl, flags); in sve_set_current_vl()
1007 ret = vec_set_vector_length(current, ARM64_VEC_SME, vl, flags); in sme_set_current_vl()
1423 sve_vq_from_vl(task_get_sve_vl(current)) - 1; in sve_init_regs()
1428 fpsimd_to_sve(current); in sve_init_regs()
1429 current->thread.fp_type = FP_STATE_SVE; in sve_init_regs()
1452 sve_alloc(current, true); in do_sve_acc()
1453 if (!current->thread.sve_state) { in do_sve_acc()
1503 sve_alloc(current, false); in do_sme_acc()
1504 sme_alloc(current, true); in do_sme_acc()
1505 if (!current->thread.sve_state || !current->thread.sme_state) { in do_sme_acc()
1518 sve_vq_from_vl(task_get_sme_vl(current)) - 1; in do_sme_acc()
1558 current); in do_fpsimd_exc()
1602 vl = task_get_vl_onexec(current, type); in fpsimd_flush_thread_vl()
1613 task_set_vl(current, type, vl); in fpsimd_flush_thread_vl()
1620 task_set_vl_onexec(current, type, 0); in fpsimd_flush_thread_vl()
1633 fpsimd_flush_task_state(current); in fpsimd_flush_thread()
1634 memset(&current->thread.uw.fpsimd_state, 0, in fpsimd_flush_thread()
1635 sizeof(current->thread.uw.fpsimd_state)); in fpsimd_flush_thread()
1641 sve_state = current->thread.sve_state; in fpsimd_flush_thread()
1642 current->thread.sve_state = NULL; in fpsimd_flush_thread()
1651 sme_state = current->thread.sme_state; in fpsimd_flush_thread()
1652 current->thread.sme_state = NULL; in fpsimd_flush_thread()
1655 current->thread.svcr = 0; in fpsimd_flush_thread()
1658 current->thread.fp_type = FP_STATE_FPSIMD; in fpsimd_flush_thread()
1688 sve_to_fpsimd(current); in fpsimd_signal_preserve_current_state()
1709 sve_to_fpsimd(current); in fpsimd_kvm_prepare()
1710 current->thread.fp_type = FP_STATE_FPSIMD; in fpsimd_kvm_prepare()
1726 last->st = &current->thread.uw.fpsimd_state; in fpsimd_bind_task_to_cpu()
1727 last->sve_state = current->thread.sve_state; in fpsimd_bind_task_to_cpu()
1728 last->sme_state = current->thread.sme_state; in fpsimd_bind_task_to_cpu()
1729 last->sve_vl = task_get_sve_vl(current); in fpsimd_bind_task_to_cpu()
1730 last->sme_vl = task_get_sme_vl(current); in fpsimd_bind_task_to_cpu()
1731 last->svcr = &current->thread.svcr; in fpsimd_bind_task_to_cpu()
1732 last->fp_type = &current->thread.fp_type; in fpsimd_bind_task_to_cpu()
1734 current->thread.fpsimd_cpu = smp_processor_id(); in fpsimd_bind_task_to_cpu()
1811 current->thread.uw.fpsimd_state = *state; in fpsimd_update_current_state()
1813 fpsimd_to_sve(current); in fpsimd_update_current_state()