[patch 4/4] x86/fpu: Remove old KVM FPU interface

From: Thomas Gleixner
Date: Sun Oct 17 2021 - 13:03:44 EST


No more users.

Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>

---
arch/x86/include/asm/fpu/api.h | 2 --
arch/x86/kernel/fpu/core.c | 32 --------------------------------
2 files changed, 34 deletions(-)
---
diff --git a/arch/x86/include/asm/fpu/api.h b/arch/x86/include/asm/fpu/api.h
index 239909a95368..286a66ff0bd1 100644
--- a/arch/x86/include/asm/fpu/api.h
+++ b/arch/x86/include/asm/fpu/api.h
@@ -131,14 +131,12 @@ static inline void fpstate_init_soft(struct swregs_state *soft) {}
DECLARE_PER_CPU(struct fpu *, fpu_fpregs_owner_ctx);

/* fpstate-related functions which are exported to KVM */
-extern void fpu_init_fpstate_user(struct fpu *fpu);
extern void fpstate_clear_xstate_component(struct fpstate *fps, unsigned int xfeature);

/* KVM specific functions */
extern bool fpu_alloc_guest_fpstate(struct fpu_guest *gfpu);
extern void fpu_free_guest_fpstate(struct fpu_guest *gfpu);
extern int fpu_swap_kvm_fpstate(struct fpu_guest *gfpu, bool enter_guest, u64 restore_mask);
-extern void fpu_swap_kvm_fpu(struct fpu *save, struct fpu *rstor, u64 restore_mask);

extern void fpu_copy_guest_fpstate_to_uabi(struct fpu_guest *gfpu, void *buf, unsigned int size, u32 pkru);
extern int fpu_copy_uabi_to_guest_fpstate(struct fpu_guest *gfpu, const void *buf, u64 xcr0, u32 *vpkru);
diff --git a/arch/x86/kernel/fpu/core.c b/arch/x86/kernel/fpu/core.c
index 60681dc8a725..4b09f0f70082 100644
--- a/arch/x86/kernel/fpu/core.c
+++ b/arch/x86/kernel/fpu/core.c
@@ -248,29 +248,6 @@ int fpu_swap_kvm_fpstate(struct fpu_guest *guest_fpu, bool enter_guest,
}
EXPORT_SYMBOL_GPL(fpu_swap_kvm_fpstate);

-void fpu_swap_kvm_fpu(struct fpu *save, struct fpu *rstor, u64 restore_mask)
-{
- fpregs_lock();
-
- if (save) {
- struct fpstate *fpcur = current->thread.fpu.fpstate;
-
- if (test_thread_flag(TIF_NEED_FPU_LOAD))
- memcpy(&save->fpstate->regs, &fpcur->regs, fpcur->size);
- else
- save_fpregs_to_fpstate(save);
- }
-
- if (rstor) {
- restore_mask &= XFEATURE_MASK_FPSTATE;
- restore_fpregs_from_fpstate(rstor->fpstate, restore_mask);
- }
-
- fpregs_mark_activate();
- fpregs_unlock();
-}
-EXPORT_SYMBOL_GPL(fpu_swap_kvm_fpu);
-
void fpu_copy_guest_fpstate_to_uabi(struct fpu_guest *gfpu, void *buf,
unsigned int size, u32 pkru)
{
@@ -440,15 +417,6 @@ void fpstate_reset(struct fpu *fpu)
__fpstate_reset(fpu->fpstate);
}

-#if IS_ENABLED(CONFIG_KVM)
-void fpu_init_fpstate_user(struct fpu *fpu)
-{
- fpstate_reset(fpu);
- fpstate_init_user(fpu->fpstate);
-}
-EXPORT_SYMBOL_GPL(fpu_init_fpstate_user);
-#endif
-
/* Clone current's FPU state on fork */
int fpu_clone(struct task_struct *dst)
{