aboutsummaryrefslogtreecommitdiffstats
path: root/arch/microblaze/include
diff options
context:
space:
mode:
authorMichal Simek <monstr@monstr.eu>2009-05-12 06:10:52 -0400
committerMichal Simek <monstr@monstr.eu>2009-05-21 09:56:07 -0400
commita6029d1c8cfc9ac2609195f31c2e70b584d3496e (patch)
tree739930b605c3aae68fe669054cb01dfad1025ffa /arch/microblaze/include
parent732703af9c3478c3f935dd5ae80140b9b12bda09 (diff)
microblaze: prepare signal handling for generic unistd.h
We need to define set_restore_sigmask() in order to get pselect and ppoll. Also, the setup_frame function can not be used when __NR_sigreturn is not defined. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Michal Simek <monstr@monstr.eu>
Diffstat (limited to 'arch/microblaze/include')
-rw-r--r--arch/microblaze/include/asm/syscalls.h3
-rw-r--r--arch/microblaze/include/asm/thread_info.h11
2 files changed, 14 insertions, 0 deletions
diff --git a/arch/microblaze/include/asm/syscalls.h b/arch/microblaze/include/asm/syscalls.h
index 9cb4ff0edeb2..ddea9eb31f8d 100644
--- a/arch/microblaze/include/asm/syscalls.h
+++ b/arch/microblaze/include/asm/syscalls.h
@@ -34,6 +34,9 @@ asmlinkage int sys_rt_sigsuspend(sigset_t __user *unewset, size_t sigsetsize,
34asmlinkage int sys_sigaction(int sig, const struct old_sigaction *act, 34asmlinkage int sys_sigaction(int sig, const struct old_sigaction *act,
35 struct old_sigaction *oact); 35 struct old_sigaction *oact);
36 36
37asmlinkage long sys_rt_sigaction(int sig, const struct sigaction __user *act,
38 struct sigaction __user *oact, size_t sigsetsize);
39
37asmlinkage int sys_sigaltstack(const stack_t __user *uss, stack_t __user *uoss, 40asmlinkage int sys_sigaltstack(const stack_t __user *uss, stack_t __user *uoss,
38 struct pt_regs *regs); 41 struct pt_regs *regs);
39 42
diff --git a/arch/microblaze/include/asm/thread_info.h b/arch/microblaze/include/asm/thread_info.h
index 4c3943e3f403..a0401d2ef8d5 100644
--- a/arch/microblaze/include/asm/thread_info.h
+++ b/arch/microblaze/include/asm/thread_info.h
@@ -154,6 +154,17 @@ static inline struct thread_info *current_thread_info(void)
154 */ 154 */
155/* FPU was used by this task this quantum (SMP) */ 155/* FPU was used by this task this quantum (SMP) */
156#define TS_USEDFPU 0x0001 156#define TS_USEDFPU 0x0001
157#define TS_RESTORE_SIGMASK 0x0002
158
159#ifndef __ASSEMBLY__
160#define HAVE_SET_RESTORE_SIGMASK 1
161static inline void set_restore_sigmask(void)
162{
163 struct thread_info *ti = current_thread_info();
164 ti->status |= TS_RESTORE_SIGMASK;
165 set_bit(TIF_SIGPENDING, (unsigned long *)&ti->flags);
166}
167#endif
157 168
158#endif /* __KERNEL__ */ 169#endif /* __KERNEL__ */
159#endif /* _ASM_MICROBLAZE_THREAD_INFO_H */ 170#endif /* _ASM_MICROBLAZE_THREAD_INFO_H */