1 #ifndef _LINUX_ELFCORE_COMPAT_H 2 #define _LINUX_ELFCORE_COMPAT_H 3 4 #include <linux/elf.h> 5 #include <linux/elfcore.h> 6 #include <linux/compat.h> 7 8 /* 9 * Make sure these layouts match the linux/elfcore.h native definitions. 10 */ 11 12 struct compat_elf_siginfo 13 { 14 compat_int_t si_signo; 15 compat_int_t si_code; 16 compat_int_t si_errno; 17 }; 18 19 struct compat_elf_prstatus 20 { 21 struct compat_elf_siginfo pr_info; 22 short pr_cursig; 23 compat_ulong_t pr_sigpend; 24 compat_ulong_t pr_sighold; 25 compat_pid_t pr_pid; 26 compat_pid_t pr_ppid; 27 compat_pid_t pr_pgrp; 28 compat_pid_t pr_sid; 29 struct compat_timeval pr_utime; 30 struct compat_timeval pr_stime; 31 struct compat_timeval pr_cutime; 32 struct compat_timeval pr_cstime; 33 compat_elf_gregset_t pr_reg; 34 #ifdef CONFIG_BINFMT_ELF_FDPIC 35 compat_ulong_t pr_exec_fdpic_loadmap; 36 compat_ulong_t pr_interp_fdpic_loadmap; 37 #endif 38 compat_int_t pr_fpvalid; 39 }; 40 41 struct compat_elf_prpsinfo 42 { 43 char pr_state; 44 char pr_sname; 45 char pr_zomb; 46 char pr_nice; 47 compat_ulong_t pr_flag; 48 __compat_uid_t pr_uid; 49 __compat_gid_t pr_gid; 50 compat_pid_t pr_pid, pr_ppid, pr_pgrp, pr_sid; 51 char pr_fname[16]; 52 char pr_psargs[ELF_PRARGSZ]; 53 }; 54 55 #endif /* _LINUX_ELFCORE_COMPAT_H */ 56