mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-28 03:35:27 +07:00
b9c9a33b76
The uc_sigmask definition in the kernel differs from the one in the glibc, the kernel uc_sigmask has 64 bits while the glibc verison is 1024 bits. The extension of the ucontext structure for 64-bit register support for 31-bit compat processes added a new field uc_gprs_high which starts 8 bytes after the uc_sigmask field. As the glibc view of the ucontext assumes a size of 128 bytes for uc_sigmask add a 120 byte padding to the kernel structure ucontext_extended after the 8 byte uc_sigmask. Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
38 lines
817 B
C
38 lines
817 B
C
/*
|
|
* S390 version
|
|
*
|
|
* Derived from "include/asm-i386/ucontext.h"
|
|
*/
|
|
|
|
#ifndef _ASM_S390_UCONTEXT_H
|
|
#define _ASM_S390_UCONTEXT_H
|
|
|
|
#define UC_EXTENDED 0x00000001
|
|
|
|
#ifndef __s390x__
|
|
|
|
struct ucontext_extended {
|
|
unsigned long uc_flags;
|
|
struct ucontext *uc_link;
|
|
stack_t uc_stack;
|
|
_sigregs uc_mcontext;
|
|
sigset_t uc_sigmask;
|
|
/* Allow for uc_sigmask growth. Glibc uses a 1024-bit sigset_t. */
|
|
unsigned char __unused[128 - sizeof(sigset_t)];
|
|
unsigned long uc_gprs_high[16];
|
|
};
|
|
|
|
#endif
|
|
|
|
struct ucontext {
|
|
unsigned long uc_flags;
|
|
struct ucontext *uc_link;
|
|
stack_t uc_stack;
|
|
_sigregs uc_mcontext;
|
|
sigset_t uc_sigmask;
|
|
/* Allow for uc_sigmask growth. Glibc uses a 1024-bit sigset_t. */
|
|
unsigned char __unused[128 - sizeof(sigset_t)];
|
|
};
|
|
|
|
#endif /* !_ASM_S390_UCONTEXT_H */
|