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