[PATCH 1/1] Revert UBUNTU Fix ARM VFP state corruption due to

Stefan Stefanov SStefanov at topcon.com
Mon May 25 04:21:08 UTC 2009


Hi kernel-team,

I have a similar problem to that described in "UBUNTU: Fix ARM VFP state corruption due to preemption".
In my case the problem is to take an IRQ (causing preemtion) just before saving the last VFP context - VSTM     r4!,{d0-d15} in vfphw.S
During the context switch the VFP is disabled via call to vfp_notifier() via atomic_notifier_call_chain(). That in turn causes a wrong VFP context to be saved in the original thread_info.

So I was wondering what is the reason to revert that patch?

Thanks a lot,
Stefan.

Below is a snippet from the trace I have captured. I can provide more details if interested.
vfp_support_entry:
...
501   501   Exec        0xC0042480        0xE3110201  TST      r1,#0x10000000 <- Resume after preempt with VFP disabled
502   502   NoExec      0xC0042484        0x1EFA8A10  VMRSNE   r8,FPINST2
503   503   Exec        0xC0042488        0xECA40B20  VSTM     r4!,{d0-d15}
503   504   Exec                          UNDEF EXCEPTION
504   504   Exec        0xFFFF0004        0xEA0000DD  B        0xffff0380
...
vfp_support_entry:
...
580   580   Exec        0xC0042488        0xECA40B20  VSTM     r4!,{d0-d15} <- Restarted Instruction with wrong VFP context

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.ubuntu.com/archives/kernel-team/attachments/20090525/5edf5c3b/attachment.html>


More information about the kernel-team mailing list