From 665c4bf764eb07e58e70393c08671a2dfcd834bb Mon Sep 17 00:00:00 2001 From: patacongo Date: Wed, 27 Oct 2010 01:46:08 +0000 Subject: Fix a signal trampoline bug git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@3053 42af7a65-404d-4744-a932-0658087f49c3 --- nuttx/ChangeLog | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) (limited to 'nuttx/ChangeLog') diff --git a/nuttx/ChangeLog b/nuttx/ChangeLog index 982217c28..d9d73582e 100644 --- a/nuttx/ChangeLog +++ b/nuttx/ChangeLog @@ -1288,7 +1288,7 @@ test is ran repeatedly in a loop. * configs/ez80f910200zco - Updated to used ZDS-II 4.11.1 -5.12 2010-xx-xx Gregory Nutt +5.12 2010-10-26 Gregory Nutt * arch/avr - Add a place to support AVR family processors. * arch/avr/include/avr32 and arch/avr/src/avr32 - Add support for AVR32 @@ -1301,4 +1301,18 @@ lib_labs.c, lib_llabs.c, lib_imaxabs.c - Add abs(), labs(), llabs(), and imaxabs(). * Add include/inttypes.h + * arch/hc/src/mc9s12ne64 - This hcs12 port grew a few more files. But it + is still a long way from complete. + * arch/*/src/*/*_sigdeliver.c - Fixed a serious error in the signal + trampoline logic. Essentially, interrupts are re-enabled while the + signal handler executes, but the logic to re-disable the interrupts + before returning from the signal handler trampoline was missing. Under + certain circumstances, this can cause stack corruption. This was + discovered by David Hewson on an ARM9 platform, but since the code + has been leveraged, the bug has been propogated from ARM to Cortex-M3, + AVR32, M16C, SH1, ZNEO, eZ80, Z8, and Z80 -- almost every architecture. + The correction has been incorporated for all architectures but only + verified on a few. + +5.13 2010-xx-xx Gregory Nutt -- cgit v1.2.3