[PATCH 0/2] ARM: VFP: Save / restore VFP state on the signal handler path

Bryan Wu bryan.wu at canonical.com
Mon Feb 22 10:38:08 UTC 2010

This fixes a VFP corruption problem in a process's main thread, when 
both the main thread and a signal handler triggered for the process 
uses floating point ops. 

Changes since v1: 
- save / restore VFP exception registers as well, to support user 
space exception handling/VFP emulation. 
- extend the existing ptrace VFP struct with the exception regs, 
so that the VFP frame is equivalent for the ptrace and signal 
handler case. 


These 2 patches fixed fsl-imx51 and mvl-dove bug:
BugLink: https://bugs.launchpad.net/ubuntu/+source/linux-fsl-imx51/+bug/507503

Although they are not accept by upstream yet, they are in good shape to fix the
VFP signal issue on ARM. It is critical for our Ubuntu ARM kernel. We will keep
eyes on upstream updates.

Please pull from:
	git://kernel.ubuntu.com/roc/ubuntu-lucid vfp_sig

Imre Deak (2):
  ARM: VFP: add support to sync the VFP state of the current thread
  ARM: VFP: preserve the HW context when calling signal handlers

 arch/arm/include/asm/ucontext.h |   19 +++-----
 arch/arm/include/asm/user.h     |    3 +
 arch/arm/kernel/signal.c        |   91 +++++++++++++++++++++++++++++++++++++--
 arch/arm/vfp/vfpmodule.c        |   46 +++++++++++++------
 4 files changed, 128 insertions(+), 31 deletions(-)

More information about the kernel-team mailing list