Re: [PATCH] ARM: vfp: Fix up exception location in Thumb mode
From: Colin Cross
Date: Wed Feb 09 2011 - 13:12:56 EST
On Wed, Jan 26, 2011 at 11:30 PM, Colin Cross <ccross@xxxxxxxxxxx> wrote:
> This patch is on top of your first patch that cleans up the comments,
> but not the second patch that fixes the PC in the VFP exception case.
> Compiled but not run tested, and I can't test crunch or iwmmxt.
> vfpmodule.c may be able to be simplified (right now its both adding
> and subtracting 4 from regs->ARM_pc).
>
> arch/arm/kernel/crunch-bits.S | 3 ---
> arch/arm/kernel/entry-armv.S | 38 ++++++++++++++++++++------------------
> arch/arm/kernel/iwmmxt.S | 3 ---
> arch/arm/nwfpe/entry.S | 1 +
> arch/arm/vfp/vfphw.S | 5 -----
> arch/arm/vfp/vfpmodule.c | 6 ++++++
> 6 files changed, 27 insertions(+), 29 deletions(-)
Finally got a chance to do some quick testing on this, it needs one
more change to drop the correction in do_undefinstr in traps.c, and
fix one register in entry-armv.S. Russell, do you have any interest
in this solution? Alternatively, a one line change to store the
corrected PC into the stack in vfphw.S instead of entry-armv.S will
fix the original problem (VFP_bounce from thumb mode returning to the
wrong address) without causing the problem introduced by your second
patch (undefined NEON or VFP-D32 instructions in thumb mode returning
to the wrong address).
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/