summary refs log tree commit diff
path: root/arch/arm/vfp
diff options
context:
space:
mode:
authorColin Cross <ccross@android.com>2012-07-20 02:03:43 +0100
committerRussell King <rmk+kernel@arm.linux.org.uk>2012-07-31 10:30:42 +0100
commita84b895a2348f0dbff31b71ddf954f70a6cde368 (patch)
treee5b4d9734e482c4f126ac3d466db780eed74a18d /arch/arm/vfp
parent4c36595ec87115f2f876f7d4fdec8ca284a42b9c (diff)
downloadlinux-a84b895a2348f0dbff31b71ddf954f70a6cde368.tar.gz
ARM: 7476/1: vfp: only clear vfp state for current cpu in vfp_pm_suspend
vfp_pm_suspend runs on each cpu, only clear the hardware state
pointer for the current cpu.  Prevents a possible crash if one
cpu clears the hw state pointer when another cpu has already
checked if it is valid.

Cc: stable@vger.kernel.org
Signed-off-by: Colin Cross <ccross@android.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/vfp')
-rw-r--r--arch/arm/vfp/vfpmodule.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/arm/vfp/vfpmodule.c b/arch/arm/vfp/vfpmodule.c
index 586961929e96..9428006728f2 100644
--- a/arch/arm/vfp/vfpmodule.c
+++ b/arch/arm/vfp/vfpmodule.c
@@ -460,7 +460,7 @@ static int vfp_pm_suspend(void)
 	}
 
 	/* clear any information we had about last context state */
-	memset(vfp_current_hw_state, 0, sizeof(vfp_current_hw_state));
+	vfp_current_hw_state[ti->cpu] = NULL;
 
 	return 0;
 }