ARM: 7308/1: vfp: flush thread hwstate before copying ptrace registers

If we are context switched whilst copying into a thread's
vfp_hard_struct then the partial copy may be corrupted by the VFP
context switching code (see "ARM: vfp: flush thread hwstate before
restoring context from sigframe").

This patch updates the ptrace VFP set code so that the thread state is
flushed before the copy, therefore disabling VFP and preventing
corruption from occurring.

Cc: stable <stable@vger.kernel.org>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
This commit is contained in:
Will Deacon 2012-01-30 20:23:29 +01:00 коммит произвёл Russell King
Родитель 247f4993a5
Коммит 8130b9d7b9
1 изменённых файлов: 1 добавлений и 1 удалений

Просмотреть файл

@ -726,8 +726,8 @@ static int vfp_set(struct task_struct *target,
if (ret)
return ret;
thread->vfpstate.hard = new_vfp;
vfp_flush_hwstate(thread);
thread->vfpstate.hard = new_vfp;
return 0;
}