From 2cac811add6179416d809c56a34d4ab55f579fd7 Mon Sep 17 00:00:00 2001 From: Will Deacon Date: Mon, 30 Jan 2012 20:21:42 +0100 Subject: [PATCH] --- yaml --- r: 287193 b: refs/heads/master c: 2af276dfb1722e97b190bd2e646b079a2aa674db h: refs/heads/master i: 287191: f2a25420302ab60d2faae8f8b84922f7f1a0f62d v: v3 --- [refs] | 2 +- trunk/arch/arm/kernel/signal.c | 5 ++--- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/[refs] b/[refs] index 50ec6dc66294..91e607b1c2a9 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 97f1040982d7935716e9a45a26ccd5cc8fe92f8c +refs/heads/master: 2af276dfb1722e97b190bd2e646b079a2aa674db diff --git a/trunk/arch/arm/kernel/signal.c b/trunk/arch/arm/kernel/signal.c index 0340224cf73c..9e617bd4a146 100644 --- a/trunk/arch/arm/kernel/signal.c +++ b/trunk/arch/arm/kernel/signal.c @@ -227,6 +227,8 @@ static int restore_vfp_context(struct vfp_sigframe __user *frame) if (magic != VFP_MAGIC || size != VFP_STORAGE_SIZE) return -EINVAL; + vfp_flush_hwstate(thread); + /* * Copy the floating point registers. There can be unused * registers see asm/hwcap.h for details. @@ -251,9 +253,6 @@ static int restore_vfp_context(struct vfp_sigframe __user *frame) __get_user_error(h->fpinst, &frame->ufp_exc.fpinst, err); __get_user_error(h->fpinst2, &frame->ufp_exc.fpinst2, err); - if (!err) - vfp_flush_hwstate(thread); - return err ? -EFAULT : 0; }