ARM: 6050/1: VFP: fix the SMP versions of vfp_{sync,flush}_hwstate

Previous thread: ARM: 6052/1: kdump: make kexec work in interrupt context by Linux Kernel Mailing List on Monday, April 19, 2010 - 8:59 am. (1 message)

Next thread: drm/radeon/kms: more atom parser fixes (v2) by Linux Kernel Mailing List on Monday, April 19, 2010 - 8:59 am. (1 message)
From: Linux Kernel Mailing List
Date: Monday, April 19, 2010 - 8:59 am

Gitweb:     http://git.kernel.org/linus/5c5cac63851f347d8308d69f1892c4af51d7c1a4
Commit:     5c5cac63851f347d8308d69f1892c4af51d7c1a4
Parent:     7e5a69e83ba7a0d5917ad830f417cba8b8d6aa72
Author:     Imre Deak <imre.deak@nokia.com>
AuthorDate: Sun Apr 11 15:57:07 2010 +0100
Committer:  Russell King <rmk+kernel@arm.linux.org.uk>
CommitDate: Wed Apr 14 11:11:30 2010 +0100

    ARM: 6050/1: VFP: fix the SMP versions of vfp_{sync,flush}_hwstate
    
    From: Imre Deak <imre.deak@nokia.com>
    
    Recently the UP versions of these functions were refactored and as
    a side effect it became possible to call them for the current thread.
    This isn't true for the SMP versions however, so fix this up.
    
    Signed-off-by: Imre Deak <imre.deak@nokia.com>
    Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
---
 arch/arm/vfp/vfpmodule.c |   31 ++++++++++---------------------
 1 files changed, 10 insertions(+), 21 deletions(-)

diff --git a/arch/arm/vfp/vfpmodule.c b/arch/arm/vfp/vfpmodule.c
index a420cb9..315a540 100644
--- a/arch/arm/vfp/vfpmodule.c
+++ b/arch/arm/vfp/vfpmodule.c
@@ -428,26 +428,6 @@ static void vfp_pm_init(void)
 static inline void vfp_pm_init(void) { }
 #endif /* CONFIG_PM */
 
-/*
- * Synchronise the hardware VFP state of a thread other than current with the
- * saved one. This function is used by the ptrace mechanism.
- */
-#ifdef CONFIG_SMP
-void vfp_sync_hwstate(struct thread_info *thread)
-{
-}
-
-void vfp_flush_hwstate(struct thread_info *thread)
-{
-	/*
-	 * On SMP systems, the VFP state is automatically saved at every
-	 * context switch. We mark the thread VFP state as belonging to a
-	 * non-existent CPU so that the saved one will be reloaded when
-	 * needed.
-	 */
-	thread->vfpstate.hard.cpu = NR_CPUS;
-}
-#else
 void vfp_sync_hwstate(struct thread_info *thread)
 {
 	unsigned int cpu = get_cpu();
@@ -490,9 +470,18 @@ void vfp_flush_hwstate(struct thread_info *thread)
 		last_VFP_context[cpu] = NULL;
 	}
 
+#ifdef ...
Previous thread: ARM: 6052/1: kdump: make kexec work in interrupt context by Linux Kernel Mailing List on Monday, April 19, 2010 - 8:59 am. (1 message)

Next thread: drm/radeon/kms: more atom parser fixes (v2) by Linux Kernel Mailing List on Monday, April 19, 2010 - 8:59 am. (1 message)