Commit 55d646fe authored by Sam Ravnborg's avatar Sam Ravnborg Committed by David S. Miller

sparc64: prepare signal_64 for unification

o add a sparc32 only definition
o fix a few style issues (white space errors etc).
o include compiler.h (for __user)
Signed-off-by: default avatarSam Ravnborg <sam@ravnborg.org>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent a0381a94
#ifndef _ASMSPARC64_SIGNAL_H #ifndef __SPARC_SIGNAL_H
#define _ASMSPARC64_SIGNAL_H #define __SPARC_SIGNAL_H
#include <asm/sigcontext.h> #include <asm/sigcontext.h>
#include <linux/compiler.h>
#ifdef __KERNEL__ #ifdef __KERNEL__
#ifndef __ASSEMBLY__ #ifndef __ASSEMBLY__
...@@ -83,8 +84,8 @@ ...@@ -83,8 +84,8 @@
#define __OLD_NSIG 32 #define __OLD_NSIG 32
#define __NEW_NSIG 64 #define __NEW_NSIG 64
#define _NSIG_BPW 64 #define _NSIG_BPW 64
#define _NSIG_WORDS (__NEW_NSIG / _NSIG_BPW) #define _NSIG_WORDS (__NEW_NSIG / _NSIG_BPW)
#define SIGRTMIN 32 #define SIGRTMIN 32
#define SIGRTMAX __NEW_NSIG #define SIGRTMAX __NEW_NSIG
...@@ -156,20 +157,35 @@ struct sigstack { ...@@ -156,20 +157,35 @@ struct sigstack {
#define MINSIGSTKSZ 4096 #define MINSIGSTKSZ 4096
#define SIGSTKSZ 16384 #define SIGSTKSZ 16384
#ifdef __KERNEL__
/*
* DJHR
* SA_STATIC_ALLOC is used for the sparc32 system to indicate that this
* interrupt handler's irq structure should be statically allocated
* by the request_irq routine.
* The alternative is that arch/sparc/kernel/irq.c has carnal knowledge
* of interrupt usage and that sucks. Also without a flag like this
* it may be possible for the free_irq routine to attempt to free
* statically allocated data.. which is NOT GOOD.
*
*/
#define SA_STATIC_ALLOC 0x8000
#endif
#include <asm-generic/signal.h> #include <asm-generic/signal.h>
struct __new_sigaction { struct __new_sigaction {
__sighandler_t sa_handler; __sighandler_t sa_handler;
unsigned long sa_flags; unsigned long sa_flags;
__sigrestore_t sa_restorer; /* not used by Linux/SPARC yet */ __sigrestore_t sa_restorer; /* not used by Linux/SPARC yet */
__new_sigset_t sa_mask; __new_sigset_t sa_mask;
}; };
struct __old_sigaction { struct __old_sigaction {
__sighandler_t sa_handler; __sighandler_t sa_handler;
__old_sigset_t sa_mask; __old_sigset_t sa_mask;
unsigned long sa_flags; unsigned long sa_flags;
void (*sa_restorer)(void); /* not used by Linux/SPARC yet */ void (*sa_restorer)(void); /* not used by Linux/SPARC yet */
}; };
typedef struct sigaltstack { typedef struct sigaltstack {
...@@ -181,8 +197,8 @@ typedef struct sigaltstack { ...@@ -181,8 +197,8 @@ typedef struct sigaltstack {
#ifdef __KERNEL__ #ifdef __KERNEL__
struct k_sigaction { struct k_sigaction {
struct __new_sigaction sa; struct __new_sigaction sa;
void __user *ka_restorer; void __user *ka_restorer;
}; };
#define ptrace_signal_deliver(regs, cookie) do { } while (0) #define ptrace_signal_deliver(regs, cookie) do { } while (0)
...@@ -191,4 +207,4 @@ struct k_sigaction { ...@@ -191,4 +207,4 @@ struct k_sigaction {
#endif /* !(__ASSEMBLY__) */ #endif /* !(__ASSEMBLY__) */
#endif /* !(_ASMSPARC64_SIGNAL_H) */ #endif /* !(__SPARC_SIGNAL_H) */
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment