search for: _klibc_use_rt_sig

Displaying 20 results from an estimated 36 matches for "_klibc_use_rt_sig".

2012 May 05
3
[PATCH] fix non-RT sigsuspend()
...files changed, 69 insertions(+), 1 deletion(-) diff --git a/usr/include/arch/alpha/klibc/archconfig.h b/usr/include/arch/alpha/klibc/archconfig.h index 272fee0..cb5c854 100644 --- a/usr/include/arch/alpha/klibc/archconfig.h +++ b/usr/include/arch/alpha/klibc/archconfig.h @@ -12,4 +12,6 @@ #define _KLIBC_USE_RT_SIG 1 #define _KLIBC_STATFS_F_TYPE_64 0 +#define _KLIBC_SIGSUSPEND_L_1 + #endif /* _KLIBC_ARCHCONFIG_H */ diff --git a/usr/include/arch/arm/klibc/archconfig.h b/usr/include/arch/arm/klibc/archconfig.h index 36e9ab5..e18145b 100644 --- a/usr/include/arch/arm/klibc/archconfig.h +++ b/usr/include/a...
2012 May 15
5
[PATCH 0/5] resubmitting pending patches
Hi, I?ve gone through the mailing list archives and hereby want to resubmit my pending patches. Most are independent of each other, except the m68k patch which will only be complete if sigsuspend is also fixed. (It can be applied before that, though.) http://www.zytor.com/pipermail/klibc/2012-January/003173.html [PATCH] fix m68k support Resubmitted here as 0005. While there was a question from
2019 Feb 02
2
[PATCH 1/2] ia64: Fix invalid memory access in vfork
Commit 8418552 ("[klibc] ia64: Fix shared build") missed this use of the GP register, although the code appears to have been dubious anyway, assuming the address of errno was the first thing pointed to by GP. --- usr/klibc/arch/ia64/vfork.S | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/usr/klibc/arch/ia64/vfork.S b/usr/klibc/arch/ia64/vfork.S index
2020 Aug 28
0
[klibc:ia64-signal-fix] signal: Move rt_sigaction() argument mangling to arch directories
...s changed, 66 insertions(+), 25 deletions(-) diff --git a/usr/klibc/SYSCALLS.def b/usr/klibc/SYSCALLS.def index b639fceb..16ad3830 100644 --- a/usr/klibc/SYSCALLS.def +++ b/usr/klibc/SYSCALLS.def @@ -207,8 +207,8 @@ ssize_t sendfile64,sendfile::sendfile(int, int, off_t *, size_t, off_t); */ #if _KLIBC_USE_RT_SIG <!sparc,sparc64,alpha> int rt_sigaction::__rt_sigaction(int, const struct sigaction *, struct sigaction *, size_t); -<sparc,sparc64> int rt_sigaction::__rt_sigaction(int, const struct sigaction *, struct sigaction *, void *, size_t); -<alpha> int rt_sigaction::__rt_sigaction(int,...
2020 Jul 25
0
[klibc:execstack-fixes] sparc: Set sa_restorer for signals and disable executable stack
...les changed, 6 insertions(+), 4 deletions(-) diff --git a/usr/include/arch/sparc/klibc/archconfig.h b/usr/include/arch/sparc/klibc/archconfig.h index 70d5ef08..ab2c5fd7 100644 --- a/usr/include/arch/sparc/klibc/archconfig.h +++ b/usr/include/arch/sparc/klibc/archconfig.h @@ -12,4 +12,7 @@ #define _KLIBC_USE_RT_SIG 1 /* Use rt_* signals */ #define _KLIBC_SYS_SOCKETCALL 1 /* Use sys_socketcall unconditionally */ +/* So that we can avoid stack trampolines */ +#define _KLIBC_NEEDS_SA_RESTORER 1 + #endif /* _KLIBC_ARCHCONFIG_H */ diff --git a/usr/klibc/SYSCALLS.def b/usr/klibc/SYSCALLS.def index 16faabcb.....
2020 Aug 20
0
[klibc:execstack-fixes] sparc: Set sa_restorer for signals and disable executable stack
...les changed, 6 insertions(+), 4 deletions(-) diff --git a/usr/include/arch/sparc/klibc/archconfig.h b/usr/include/arch/sparc/klibc/archconfig.h index 70d5ef08..ab2c5fd7 100644 --- a/usr/include/arch/sparc/klibc/archconfig.h +++ b/usr/include/arch/sparc/klibc/archconfig.h @@ -12,4 +12,7 @@ #define _KLIBC_USE_RT_SIG 1 /* Use rt_* signals */ #define _KLIBC_SYS_SOCKETCALL 1 /* Use sys_socketcall unconditionally */ +/* So that we can avoid stack trampolines */ +#define _KLIBC_NEEDS_SA_RESTORER 1 + #endif /* _KLIBC_ARCHCONFIG_H */ diff --git a/usr/klibc/SYSCALLS.def b/usr/klibc/SYSCALLS.def index 16faabcb.....
2020 Aug 27
0
[klibc:master] signal: Add compile-time check on signal types
...bc/sigaction.c +++ b/usr/klibc/sigaction.c @@ -3,6 +3,7 @@ */ #include <signal.h> +#include <stddef.h> #include <sys/syscall.h> #include <klibc/sysconfig.h> @@ -38,6 +39,13 @@ int sigaction(int sig, const struct sigaction *act, struct sigaction *oact) #endif #if _KLIBC_USE_RT_SIG + /* Check that we have the right signal API definitions */ + (void)sizeof(char[_NSIG >= 64 ? 1 : -1]); + (void)sizeof(char[sizeof(sigset_t) * 8 >= _NSIG ? 1 : -1]); + (void)sizeof(char[offsetof(struct sigaction, sa_mask) + + sizeof(sigset_t) == sizeof(struct sigaction) + ? 1 : -1]);...
2020 Aug 27
0
[klibc:master] signal: Add sysconfig setting to force SA_SIGINFO on
...gs) != needed_flags) { sa = *act; + sa.sa_flags |= needed_flags; +#if _KLIBC_NEEDS_SA_RESTORER + if (!(act->sa_flags & SA_RESTORER)) + sa.sa_restorer = &__sigreturn; +#endif act = &sa; - - sa.sa_flags |= SA_RESTORER; - sa.sa_restorer = &__sigreturn; } -#endif #if _KLIBC_USE_RT_SIG /* Check that we have the right signal API definitions */
2020 Aug 29
0
[klibc:master] signal: Add config flag for additional sigaction fixup
...a8181a41 100644 --- a/usr/klibc/sigaction.c +++ b/usr/klibc/sigaction.c @@ -8,11 +8,17 @@ #include <klibc/sysconfig.h> __extern void __sigreturn(void); + +#if _KLIBC_NEEDS_SIGACTION_FIXUP +typedef struct sigaction *act_type; +#else +typedef const struct sigaction *act_type; +#endif + #if _KLIBC_USE_RT_SIG -__extern int __rt_sigaction(int, const struct sigaction *, struct sigaction *, - size_t); +__extern int __rt_sigaction(int, act_type, struct sigaction *, size_t); #else -__extern int __sigaction(int, const struct sigaction *, struct sigaction *); +__extern int __sigaction(int, act_type, str...
2020 Aug 27
0
[klibc:master] sparc: Set sa_restorer for signals and disable executable stack
...les changed, 8 insertions(+), 4 deletions(-) diff --git a/usr/include/arch/sparc/klibc/archconfig.h b/usr/include/arch/sparc/klibc/archconfig.h index 70d5ef08..651b213d 100644 --- a/usr/include/arch/sparc/klibc/archconfig.h +++ b/usr/include/arch/sparc/klibc/archconfig.h @@ -12,4 +12,9 @@ #define _KLIBC_USE_RT_SIG 1 /* Use rt_* signals */ #define _KLIBC_SYS_SOCKETCALL 1 /* Use sys_socketcall unconditionally */ +/* So that we can avoid stack trampolines */ +#define _KLIBC_NEEDS_SA_RESTORER 1 +/* Our restorer will call rt_sigreturn() */ +#define _KLIBC_NEEDS_SA_SIGINFO 1 + #endif /* _KLIBC_ARCHCONFIG_H...
2020 Jul 25
0
[klibc:execstack-fixes] alpha: Set sa_restorer for signals and disable executable stack
...es changed, 22 insertions(+), 4 deletions(-) diff --git a/usr/include/arch/alpha/klibc/archconfig.h b/usr/include/arch/alpha/klibc/archconfig.h index 272fee0a..b80d299f 100644 --- a/usr/include/arch/alpha/klibc/archconfig.h +++ b/usr/include/arch/alpha/klibc/archconfig.h @@ -12,4 +12,7 @@ #define _KLIBC_USE_RT_SIG 1 #define _KLIBC_STATFS_F_TYPE_64 0 +/* So that we can avoid stack trampolines */ +#define _KLIBC_NEEDS_SA_RESTORER 1 + #endif /* _KLIBC_ARCHCONFIG_H */ diff --git a/usr/klibc/arch/alpha/Kbuild b/usr/klibc/arch/alpha/Kbuild index 2e566eb6..eef7cfb4 100644 --- a/usr/klibc/arch/alpha/Kbuild ++...
2020 Aug 20
0
[klibc:execstack-fixes] alpha: Set sa_restorer for signals and disable executable stack
...es changed, 22 insertions(+), 4 deletions(-) diff --git a/usr/include/arch/alpha/klibc/archconfig.h b/usr/include/arch/alpha/klibc/archconfig.h index 272fee0a..b80d299f 100644 --- a/usr/include/arch/alpha/klibc/archconfig.h +++ b/usr/include/arch/alpha/klibc/archconfig.h @@ -12,4 +12,7 @@ #define _KLIBC_USE_RT_SIG 1 #define _KLIBC_STATFS_F_TYPE_64 0 +/* So that we can avoid stack trampolines */ +#define _KLIBC_NEEDS_SA_RESTORER 1 + #endif /* _KLIBC_ARCHCONFIG_H */ diff --git a/usr/klibc/arch/alpha/Kbuild b/usr/klibc/arch/alpha/Kbuild index 2e566eb6..eef7cfb4 100644 --- a/usr/klibc/arch/alpha/Kbuild ++...
2019 Feb 02
0
[PATCH 2/2] ia64: Fix sigaction struct layout and function implementation
...entry; + } + + if (act && act->sa_handler != SIG_IGN && act->sa_handler != SIG_DFL) { + sa = *act; + act = &sa; + + signal_descriptors[sig].entry = (uintptr_t)sa.sa_handler; + + sa.sa_handler = (__sighandler_t)(uintptr_t)&signal_descriptors[sig]; + } +#endif + #if _KLIBC_USE_RT_SIG # ifdef __sparc__ { @@ -61,5 +98,11 @@ int sigaction(int sig, const struct sigaction *act, struct sigaction *oact) } #endif +#ifdef __ia64__ + if (oact && oact->sa_handler != SIG_IGN && oact->sa_handler != SIG_DFL) { + oact->sa_handler = (__sighandler_t)old_entry;...
2012 May 29
0
[klibc:master] alpha: fix signal handler setup on DEC Alpha
...klibc/SYSCALLS.def index 0463df8..9b07aa2 100644 --- a/usr/klibc/SYSCALLS.def +++ b/usr/klibc/SYSCALLS.def @@ -202,8 +202,9 @@ ssize_t sendfile64,sendfile::sendfile(int, int, off_t *, size_t, off_t); * sanitizing <signal.h> for all architectures, sigh. See <klibc/config.h>. */ #if _KLIBC_USE_RT_SIG -<!sparc,sparc64> int rt_sigaction::__rt_sigaction(int, const struct sigaction *, struct sigaction *, size_t); +<!sparc,sparc64,alpha> int rt_sigaction::__rt_sigaction(int, const struct sigaction *, struct sigaction *, size_t); <sparc,sparc64> int rt_sigaction::__rt_sigaction(int...
2020 Aug 27
0
[klibc:master] alpha: Pass restorer to rt_sigaction() and disable executable stack
...deletions(-) diff --git a/usr/include/arch/alpha/klibc/archconfig.h b/usr/include/arch/alpha/klibc/archconfig.h index 272fee0a..9d28db12 100644 --- a/usr/include/arch/alpha/klibc/archconfig.h +++ b/usr/include/arch/alpha/klibc/archconfig.h @@ -10,6 +10,8 @@ #define _KLIBC_ARCHCONFIG_H #define _KLIBC_USE_RT_SIG 1 +/* We provide our own restorer that call rt_sigreturn() */ +#define _KLIBC_NEEDS_SA_SIGINFO 1 #define _KLIBC_STATFS_F_TYPE_64 0 #endif /* _KLIBC_ARCHCONFIG_H */ diff --git a/usr/klibc/arch/alpha/Kbuild b/usr/klibc/arch/alpha/Kbuild index 2e566eb6..89386aea 100644 --- a/usr/klibc/arch/alph...
2015 Nov 05
0
[klibc:master] Inline __arch_libcinit()
...e/arch/i386/klibc/archconfig.h b/usr/include/arch/i386/klibc/archconfig.h index d8db763..f070f5b 100644 --- a/usr/include/arch/i386/klibc/archconfig.h +++ b/usr/include/arch/i386/klibc/archconfig.h @@ -12,7 +12,7 @@ /* The i386 <asm/signal.h> is still not clean enough for this... */ #define _KLIBC_USE_RT_SIG 0 -/* We have __libc_arch_init() */ +/* We have klibc/archinit.h and __libc_archinit() */ #define _KLIBC_HAS_ARCHINIT 1 #endif /* _KLIBC_ARCHCONFIG_H */ diff --git a/usr/klibc/arch/i386/archinit.c b/usr/include/arch/i386/klibc/archinit.h similarity index 78% rename from usr/klibc/arch/i386...
2014 Apr 09
0
[klibc:master] Move architecture-specific initialization to arch/
...e/arch/i386/klibc/archconfig.h b/usr/include/arch/i386/klibc/archconfig.h index b409a21..d8db763 100644 --- a/usr/include/arch/i386/klibc/archconfig.h +++ b/usr/include/arch/i386/klibc/archconfig.h @@ -12,4 +12,7 @@ /* The i386 <asm/signal.h> is still not clean enough for this... */ #define _KLIBC_USE_RT_SIG 0 +/* We have __libc_arch_init() */ +#define _KLIBC_HAS_ARCHINIT 1 + #endif /* _KLIBC_ARCHCONFIG_H */ diff --git a/usr/include/klibc/sysconfig.h b/usr/include/klibc/sysconfig.h index 5fa9b60..ab947c0 100644 --- a/usr/include/klibc/sysconfig.h +++ b/usr/include/klibc/sysconfig.h @@ -216,4 +216...
2020 Aug 29
0
[klibc:master] ia64: Fix sigaction function implementation
...bc/SYSCALLS.def index 16ad3830..c8ac9e0d 100644 --- a/usr/klibc/SYSCALLS.def +++ b/usr/klibc/SYSCALLS.def @@ -206,9 +206,10 @@ ssize_t sendfile64,sendfile::sendfile(int, int, off_t *, size_t, off_t); * sanitizing <signal.h> for all architectures, sigh. See <klibc/config.h>. */ #if _KLIBC_USE_RT_SIG -<!sparc,sparc64,alpha> int rt_sigaction::__rt_sigaction(int, const struct sigaction *, struct sigaction *, size_t); +<!sparc,sparc64,alpha,ia64> int rt_sigaction::__rt_sigaction(int, const struct sigaction *, struct sigaction *, size_t); <sparc,sparc64> int rt_sigaction::____rt_...
2020 Aug 28
0
[klibc:ia64-signal-fix] ia64: Fix sigaction struct layout and function implementation
...bc/SYSCALLS.def index 16ad3830..c8ac9e0d 100644 --- a/usr/klibc/SYSCALLS.def +++ b/usr/klibc/SYSCALLS.def @@ -206,9 +206,10 @@ ssize_t sendfile64,sendfile::sendfile(int, int, off_t *, size_t, off_t); * sanitizing <signal.h> for all architectures, sigh. See <klibc/config.h>. */ #if _KLIBC_USE_RT_SIG -<!sparc,sparc64,alpha> int rt_sigaction::__rt_sigaction(int, const struct sigaction *, struct sigaction *, size_t); +<!sparc,sparc64,alpha,ia64> int rt_sigaction::__rt_sigaction(int, const struct sigaction *, struct sigaction *, size_t); <sparc,sparc64> int rt_sigaction::____rt_...
2015 Mar 06
0
[klibc:master] add-mips64-support-headers
....df3cf1c 100644 --- a/usr/include/arch/mips64/klibc/archconfig.h +++ b/usr/include/arch/mips64/klibc/archconfig.h @@ -12,7 +12,12 @@ /* MIPS has nonstandard socket definitions */ #define _KLIBC_HAS_ARCHSOCKET_H 1 +#define _KLIBC_STATFS_F_TYPE_64 1 + /* We can use RT signals on MIPS */ #define _KLIBC_USE_RT_SIG 1 +/* MIPS has architecture-specific code for vfork() */ +#define _KLIBC_REAL_VFORK 1 + #endif /* _KLIBC_ARCHCONFIG_H */ diff --git a/usr/include/arch/mips/klibc/archsetjmp.h b/usr/include/arch/mips64/klibc/archsetjmp.h similarity index 58% copy from usr/include/arch/mips/klibc/archsetjmp.h c...