1deae26bfSKyle McMartin #ifndef _ASM_PARISC_RT_SIGFRAME_H
2deae26bfSKyle McMartin #define _ASM_PARISC_RT_SIGFRAME_H
3deae26bfSKyle McMartin 
4deae26bfSKyle McMartin #define SIGRETURN_TRAMP 4
5deae26bfSKyle McMartin #define SIGRESTARTBLOCK_TRAMP 5
6deae26bfSKyle McMartin #define TRAMP_SIZE (SIGRETURN_TRAMP + SIGRESTARTBLOCK_TRAMP)
7deae26bfSKyle McMartin 
8deae26bfSKyle McMartin struct rt_sigframe {
9deae26bfSKyle McMartin 	/* XXX: Must match trampoline size in arch/parisc/kernel/signal.c
10deae26bfSKyle McMartin 	        Secondary to that it must protect the ERESTART_RESTARTBLOCK
11deae26bfSKyle McMartin 		trampoline we left on the stack (we were bad and didn't
12deae26bfSKyle McMartin 		change sp so we could run really fast.) */
13deae26bfSKyle McMartin 	unsigned int tramp[TRAMP_SIZE];
14deae26bfSKyle McMartin 	struct siginfo info;
15deae26bfSKyle McMartin 	struct ucontext uc;
16deae26bfSKyle McMartin };
17deae26bfSKyle McMartin 
18deae26bfSKyle McMartin #define	SIGFRAME		128
19deae26bfSKyle McMartin #define FUNCTIONCALLFRAME	96
20deae26bfSKyle McMartin #define PARISC_RT_SIGFRAME_SIZE					\
21deae26bfSKyle McMartin 	(((sizeof(struct rt_sigframe) + FUNCTIONCALLFRAME) + SIGFRAME) & -SIGFRAME)
22deae26bfSKyle McMartin 
23deae26bfSKyle McMartin #endif
24