|
@@ -120,7 +120,6 @@
|
|
|
*/
|
|
|
struct fpsimd_last_state_struct {
|
|
|
struct user_fpsimd_state *st;
|
|
|
- bool sve_in_use;
|
|
|
};
|
|
|
|
|
|
static DEFINE_PER_CPU(struct fpsimd_last_state_struct, fpsimd_last_state);
|
|
@@ -1008,7 +1007,6 @@ void fpsimd_bind_task_to_cpu(void)
|
|
|
this_cpu_ptr(&fpsimd_last_state);
|
|
|
|
|
|
last->st = ¤t->thread.uw.fpsimd_state;
|
|
|
- last->sve_in_use = test_thread_flag(TIF_SVE);
|
|
|
current->thread.fpsimd_cpu = smp_processor_id();
|
|
|
|
|
|
if (system_supports_sve()) {
|
|
@@ -1030,7 +1028,6 @@ void fpsimd_bind_state_to_cpu(struct user_fpsimd_state *st)
|
|
|
WARN_ON(!in_softirq() && !irqs_disabled());
|
|
|
|
|
|
last->st = st;
|
|
|
- last->sve_in_use = false;
|
|
|
}
|
|
|
|
|
|
/*
|
|
@@ -1091,24 +1088,6 @@ void fpsimd_flush_cpu_state(void)
|
|
|
set_thread_flag(TIF_FOREIGN_FPSTATE);
|
|
|
}
|
|
|
|
|
|
-/*
|
|
|
- * Invalidate any task SVE state currently held in this CPU's regs.
|
|
|
- *
|
|
|
- * This is used to prevent the kernel from trying to reuse SVE register data
|
|
|
- * that is detroyed by KVM guest enter/exit. This function should go away when
|
|
|
- * KVM SVE support is implemented. Don't use it for anything else.
|
|
|
- */
|
|
|
-#ifdef CONFIG_ARM64_SVE
|
|
|
-void sve_flush_cpu_state(void)
|
|
|
-{
|
|
|
- struct fpsimd_last_state_struct const *last =
|
|
|
- this_cpu_ptr(&fpsimd_last_state);
|
|
|
-
|
|
|
- if (last->st && last->sve_in_use)
|
|
|
- fpsimd_flush_cpu_state();
|
|
|
-}
|
|
|
-#endif /* CONFIG_ARM64_SVE */
|
|
|
-
|
|
|
#ifdef CONFIG_KERNEL_MODE_NEON
|
|
|
|
|
|
DEFINE_PER_CPU(bool, kernel_neon_busy);
|