[PATCH v2] vfp: clear vfp_current_hw_state for dying cpu
Russell King - ARM Linux
linux at arm.linux.org.uk
Wed Oct 30 12:15:41 EDT 2013
On Tue, Oct 22, 2013 at 02:35:53PM -0500, Yuanyuan Zhong wrote:
> Previous version of the patch can be found at:
> http://lists.infradead.org/pipermail/linux-arm-kernel/2013-October/201893.html
>
> The CPU_DYING notifier is called by cpu stopper task which
> does not own the context held in the VFP hardware. Calling
> vfp_force_reload() has no effect.
> Replace it with clearing vfp_current_hw_state.
>
> Change-Id: Icb2c726334c5b0463b8126170cac2b44cd4ac38f
> Signed-off-by: Yuanyuan Zhong <zyy at motorola.com>
This is fine, please put the patch into the patch system and I'll send it
to Linus soon. Please omit the Change-Id though. Thanks.
> ---
> arch/arm/vfp/vfpmodule.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/arch/arm/vfp/vfpmodule.c b/arch/arm/vfp/vfpmodule.c
> index 52b8f40..2f37e1d 100644
> --- a/arch/arm/vfp/vfpmodule.c
> +++ b/arch/arm/vfp/vfpmodule.c
> @@ -642,9 +642,9 @@ int vfp_restore_user_hwstate(struct user_vfp __user *ufp,
> static int vfp_hotplug(struct notifier_block *b, unsigned long action,
> void *hcpu)
> {
> - if (action == CPU_DYING || action == CPU_DYING_FROZEN) {
> - vfp_force_reload((long)hcpu, current_thread_info());
> - } else if (action == CPU_STARTING || action == CPU_STARTING_FROZEN)
> + if (action == CPU_DYING || action == CPU_DYING_FROZEN)
> + vfp_current_hw_state[(long)hcpu] = NULL;
> + else if (action == CPU_STARTING || action == CPU_STARTING_FROZEN)
> vfp_enable(NULL);
> return NOTIFY_OK;
> }
> --
> 1.7.9.5
>
>
> _______________________________________________
> linux-arm-kernel mailing list
> linux-arm-kernel at lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
More information about the linux-arm-kernel
mailing list