X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=include%2Fasm-x86_64%2Fia32.h;h=0190b7c4e319cc1a153a23ba2030267ba8694b4e;hb=97bf2856c6014879bd04983a3e9dfcdac1e7fe85;hp=73319a9a8ca5dd853e2a4d55e687873e0b0d10c1;hpb=c7b5ebbddf7bcd3651947760f423e3783bbe6573;p=linux-2.6.git diff --git a/include/asm-x86_64/ia32.h b/include/asm-x86_64/ia32.h index 73319a9a8..0190b7c4e 100644 --- a/include/asm-x86_64/ia32.h +++ b/include/asm-x86_64/ia32.h @@ -1,7 +1,6 @@ #ifndef _ASM_X86_64_IA32_H #define _ASM_X86_64_IA32_H -#include #ifdef CONFIG_IA32_EMULATION @@ -78,7 +77,7 @@ struct stat64 { unsigned long long st_ino; } __attribute__((packed)); -typedef struct siginfo32 { +typedef struct compat_siginfo{ int si_signo; int si_errno; int si_code; @@ -94,7 +93,7 @@ typedef struct siginfo32 { /* POSIX.1b timers */ struct { - int _tid; /* timer id */ + compat_timer_t _tid; /* timer id */ int _overrun; /* overrun count */ compat_sigval_t _sigval; /* same as below */ int _sys_private; /* not to be passed to user */ @@ -128,7 +127,7 @@ typedef struct siginfo32 { int _fd; } _sigpoll; } _sifields; -} siginfo_t32; +} compat_siginfo_t; struct sigframe32 { @@ -145,7 +144,7 @@ struct rt_sigframe32 int sig; u32 pinfo; u32 puc; - struct siginfo32 info; + compat_siginfo_t info; struct ucontext_ia32 uc; struct _fpstate_ia32 fpstate; }; @@ -165,8 +164,13 @@ struct siginfo_t; int do_get_thread_area(struct thread_struct *t, struct user_desc __user *info); int do_set_thread_area(struct thread_struct *t, struct user_desc __user *info); int ia32_child_tls(struct task_struct *p, struct pt_regs *childregs); -int ia32_copy_siginfo_from_user(siginfo_t *to, siginfo_t32 __user *from); -int ia32_copy_siginfo_to_user(siginfo_t32 __user *to, siginfo_t *from); + +struct linux_binprm; +extern int ia32_setup_arg_pages(struct linux_binprm *bprm, + unsigned long stack_top, int exec_stack); +struct mm_struct; +extern void ia32_pick_mmap_layout(struct mm_struct *mm); + #endif #endif /* !CONFIG_IA32_SUPPORT */