summaryrefslogtreecommitdiffstats
path: root/toolchain/uClibc/patches-0.9.29/008-avr32_fix_sa_onstack.patch
diff options
context:
space:
mode:
authornbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2009-03-23 17:56:28 +0000
committernbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2009-03-23 17:56:28 +0000
commitaa725129e840e596bbbf43b80fed6194a0dfbc72 (patch)
tree0578b4c71aab8f3d979d3181a922382acf050816 /toolchain/uClibc/patches-0.9.29/008-avr32_fix_sa_onstack.patch
parentaea8cdc96da2e917d66a3ec59fe3b94f424bc570 (diff)
clean up uclibc patch/config version handling a bit
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@14994 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'toolchain/uClibc/patches-0.9.29/008-avr32_fix_sa_onstack.patch')
-rw-r--r--toolchain/uClibc/patches-0.9.29/008-avr32_fix_sa_onstack.patch26
1 files changed, 26 insertions, 0 deletions
diff --git a/toolchain/uClibc/patches-0.9.29/008-avr32_fix_sa_onstack.patch b/toolchain/uClibc/patches-0.9.29/008-avr32_fix_sa_onstack.patch
new file mode 100644
index 000000000..5a30861e1
--- /dev/null
+++ b/toolchain/uClibc/patches-0.9.29/008-avr32_fix_sa_onstack.patch
@@ -0,0 +1,26 @@
+From 974a769cc135bcfb1ea751db34a84ed6b5ceb509 Mon Sep 17 00:00:00 2001
+From: Haavard Skinnemoen <hskinnemoen@atmel.com>
+Date: Fri, 7 Dec 2007 14:02:19 +0100
+Subject: [PATCH] AVR32: Fix sa_restorer when SA_ONSTACK is set
+
+I don't remember exactly why we decided to pick the caller's value of
+sa_restorer when SA_ONSTACK is set, but it seems to break LTP's
+sigaltstack testcase. Some users have reported problems with
+sigaltstack as well; hopefully this will fix it.
+
+Signed-off-by: Haavard Skinnemoen <hskinnemoen@atmel.com>
+---
+ libc/sysdeps/linux/avr32/sigaction.c | 2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+--- a/libc/sysdeps/linux/avr32/sigaction.c
++++ b/libc/sysdeps/linux/avr32/sigaction.c
+@@ -30,7 +30,7 @@ int __libc_sigaction(int signum, const s
+ kact.k_sa_handler = act->sa_handler;
+ memcpy(&kact.sa_mask, &act->sa_mask, sizeof (kact.sa_mask));
+ kact.sa_flags = act->sa_flags;
+- if (kact.sa_flags & (SA_RESTORER | SA_ONSTACK))
++ if (kact.sa_flags & SA_RESTORER)
+ kact.sa_restorer = act->sa_restorer;
+ else
+ kact.sa_restorer = __default_rt_sa_restorer;