aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorH. Peter Anvin <hpa@zytor.com>2008-01-30 07:30:56 -0500
committerIngo Molnar <mingo@elte.hu>2008-01-30 07:30:56 -0500
commit742fa54a62be6a263df14a553bf832724471dfbe (patch)
tree991589593b078eb2ede035f511e4b85b11b95a9c
parent153d5f2e5787c74e9cbb6b6687c9b04be1b59893 (diff)
x86: use generic register names in struct sigcontext
Switch struct sigcontext (defined in <asm/sigcontext*.h>) to using register names withut e- or r-prefixes for both 32- and 64-bit x86. This is intended as a preliminary step in unifying this code between architectures. Signed-off-by: H. Peter Anvin <hpa@zytor.com> Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
-rw-r--r--arch/x86/ia32/ia32_signal.c32
-rw-r--r--arch/x86/kernel/asm-offsets_32.c18
-rw-r--r--arch/x86/kernel/asm-offsets_64.c18
-rw-r--r--arch/x86/kernel/signal_32.c28
-rw-r--r--arch/x86/kernel/signal_64.c29
-rw-r--r--arch/x86/vdso/vdso32/sigreturn.S54
-rw-r--r--include/asm-x86/sigcontext.h42
-rw-r--r--include/asm-x86/sigcontext32.h22
8 files changed, 121 insertions, 122 deletions
diff --git a/arch/x86/ia32/ia32_signal.c b/arch/x86/ia32/ia32_signal.c
index f2da443f8c7b..d03d43f32f4c 100644
--- a/arch/x86/ia32/ia32_signal.c
+++ b/arch/x86/ia32/ia32_signal.c
@@ -192,9 +192,9 @@ struct rt_sigframe
192 char retcode[8]; 192 char retcode[8];
193}; 193};
194 194
195#define COPY(x) { \ 195#define COPY(x) { \
196 unsigned int reg; \ 196 unsigned int reg; \
197 err |= __get_user(reg, &sc->e ##x); \ 197 err |= __get_user(reg, &sc->x); \
198 regs->x = reg; \ 198 regs->x = reg; \
199} 199}
200 200
@@ -248,7 +248,7 @@ static int ia32_restore_sigcontext(struct pt_regs *regs,
248 err |= __get_user(regs->ss, &sc->ss); 248 err |= __get_user(regs->ss, &sc->ss);
249 regs->ss |= 3; 249 regs->ss |= 3;
250 250
251 err |= __get_user(tmpflags, &sc->eflags); 251 err |= __get_user(tmpflags, &sc->flags);
252 regs->flags = (regs->flags & ~0x40DD5) | (tmpflags & 0x40DD5); 252 regs->flags = (regs->flags & ~0x40DD5) | (tmpflags & 0x40DD5);
253 /* disable syscall checks */ 253 /* disable syscall checks */
254 regs->orig_ax = -1; 254 regs->orig_ax = -1;
@@ -268,7 +268,7 @@ static int ia32_restore_sigcontext(struct pt_regs *regs,
268 } 268 }
269 } 269 }
270 270
271 err |= __get_user(tmp, &sc->eax); 271 err |= __get_user(tmp, &sc->ax);
272 *peax = tmp; 272 *peax = tmp;
273 273
274 return err; 274 return err;
@@ -361,21 +361,21 @@ static int ia32_setup_sigcontext(struct sigcontext_ia32 __user *sc,
361 __asm__("movl %%es,%0" : "=r"(tmp): "0"(tmp)); 361 __asm__("movl %%es,%0" : "=r"(tmp): "0"(tmp));
362 err |= __put_user(tmp, (unsigned int __user *)&sc->es); 362 err |= __put_user(tmp, (unsigned int __user *)&sc->es);
363 363
364 err |= __put_user((u32)regs->di, &sc->edi); 364 err |= __put_user((u32)regs->di, &sc->di);
365 err |= __put_user((u32)regs->si, &sc->esi); 365 err |= __put_user((u32)regs->si, &sc->si);
366 err |= __put_user((u32)regs->bp, &sc->ebp); 366 err |= __put_user((u32)regs->bp, &sc->bp);
367 err |= __put_user((u32)regs->sp, &sc->esp); 367 err |= __put_user((u32)regs->sp, &sc->sp);
368 err |= __put_user((u32)regs->bx, &sc->ebx); 368 err |= __put_user((u32)regs->bx, &sc->bx);
369 err |= __put_user((u32)regs->dx, &sc->edx); 369 err |= __put_user((u32)regs->dx, &sc->dx);
370 err |= __put_user((u32)regs->cx, &sc->ecx); 370 err |= __put_user((u32)regs->cx, &sc->cx);
371 err |= __put_user((u32)regs->ax, &sc->eax); 371 err |= __put_user((u32)regs->ax, &sc->ax);
372 err |= __put_user((u32)regs->cs, &sc->cs); 372 err |= __put_user((u32)regs->cs, &sc->cs);
373 err |= __put_user((u32)regs->ss, &sc->ss); 373 err |= __put_user((u32)regs->ss, &sc->ss);
374 err |= __put_user(current->thread.trap_no, &sc->trapno); 374 err |= __put_user(current->thread.trap_no, &sc->trapno);
375 err |= __put_user(current->thread.error_code, &sc->err); 375 err |= __put_user(current->thread.error_code, &sc->err);
376 err |= __put_user((u32)regs->ip, &sc->eip); 376 err |= __put_user((u32)regs->ip, &sc->ip);
377 err |= __put_user((u32)regs->flags, &sc->eflags); 377 err |= __put_user((u32)regs->flags, &sc->flags);
378 err |= __put_user((u32)regs->sp, &sc->esp_at_signal); 378 err |= __put_user((u32)regs->sp, &sc->sp_at_signal);
379 379
380 tmp = save_i387_ia32(current, fpstate, regs, 0); 380 tmp = save_i387_ia32(current, fpstate, regs, 0);
381 if (tmp < 0) 381 if (tmp < 0)
diff --git a/arch/x86/kernel/asm-offsets_32.c b/arch/x86/kernel/asm-offsets_32.c
index a3a8be7618d1..4fc24a61f431 100644
--- a/arch/x86/kernel/asm-offsets_32.c
+++ b/arch/x86/kernel/asm-offsets_32.c
@@ -38,15 +38,15 @@ void foo(void);
38 38
39void foo(void) 39void foo(void)
40{ 40{
41 OFFSET(IA32_SIGCONTEXT_eax, sigcontext, eax); 41 OFFSET(IA32_SIGCONTEXT_ax, sigcontext, ax);
42 OFFSET(IA32_SIGCONTEXT_ebx, sigcontext, ebx); 42 OFFSET(IA32_SIGCONTEXT_bx, sigcontext, bx);
43 OFFSET(IA32_SIGCONTEXT_ecx, sigcontext, ecx); 43 OFFSET(IA32_SIGCONTEXT_cx, sigcontext, cx);
44 OFFSET(IA32_SIGCONTEXT_edx, sigcontext, edx); 44 OFFSET(IA32_SIGCONTEXT_dx, sigcontext, dx);
45 OFFSET(IA32_SIGCONTEXT_esi, sigcontext, esi); 45 OFFSET(IA32_SIGCONTEXT_si, sigcontext, si);
46 OFFSET(IA32_SIGCONTEXT_edi, sigcontext, edi); 46 OFFSET(IA32_SIGCONTEXT_di, sigcontext, di);
47 OFFSET(IA32_SIGCONTEXT_ebp, sigcontext, ebp); 47 OFFSET(IA32_SIGCONTEXT_bp, sigcontext, bp);
48 OFFSET(IA32_SIGCONTEXT_esp, sigcontext, esp); 48 OFFSET(IA32_SIGCONTEXT_sp, sigcontext, sp);
49 OFFSET(IA32_SIGCONTEXT_eip, sigcontext, eip); 49 OFFSET(IA32_SIGCONTEXT_ip, sigcontext, ip);
50 BLANK(); 50 BLANK();
51 51
52 OFFSET(CPUINFO_x86, cpuinfo_x86, x86); 52 OFFSET(CPUINFO_x86, cpuinfo_x86, x86);
diff --git a/arch/x86/kernel/asm-offsets_64.c b/arch/x86/kernel/asm-offsets_64.c
index 2e918ebf21d3..a05428764314 100644
--- a/arch/x86/kernel/asm-offsets_64.c
+++ b/arch/x86/kernel/asm-offsets_64.c
@@ -63,15 +63,15 @@ int main(void)
63#undef ENTRY 63#undef ENTRY
64#ifdef CONFIG_IA32_EMULATION 64#ifdef CONFIG_IA32_EMULATION
65#define ENTRY(entry) DEFINE(IA32_SIGCONTEXT_ ## entry, offsetof(struct sigcontext_ia32, entry)) 65#define ENTRY(entry) DEFINE(IA32_SIGCONTEXT_ ## entry, offsetof(struct sigcontext_ia32, entry))
66 ENTRY(eax); 66 ENTRY(ax);
67 ENTRY(ebx); 67 ENTRY(bx);
68 ENTRY(ecx); 68 ENTRY(cx);
69 ENTRY(edx); 69 ENTRY(dx);
70 ENTRY(esi); 70 ENTRY(si);
71 ENTRY(edi); 71 ENTRY(di);
72 ENTRY(ebp); 72 ENTRY(bp);
73 ENTRY(esp); 73 ENTRY(sp);
74 ENTRY(eip); 74 ENTRY(ip);
75 BLANK(); 75 BLANK();
76#undef ENTRY 76#undef ENTRY
77 DEFINE(IA32_RT_SIGFRAME_sigcontext, 77 DEFINE(IA32_RT_SIGFRAME_sigcontext,
diff --git a/arch/x86/kernel/signal_32.c b/arch/x86/kernel/signal_32.c
index 40fd3515ccf1..64cb3c05de69 100644
--- a/arch/x86/kernel/signal_32.c
+++ b/arch/x86/kernel/signal_32.c
@@ -105,7 +105,7 @@ restore_sigcontext(struct pt_regs *regs, struct sigcontext __user *sc, int *peax
105 /* Always make any pending restarted system calls return -EINTR */ 105 /* Always make any pending restarted system calls return -EINTR */
106 current_thread_info()->restart_block.fn = do_no_restart_syscall; 106 current_thread_info()->restart_block.fn = do_no_restart_syscall;
107 107
108#define COPY(x) err |= __get_user(regs->x, &sc->e ## x) 108#define COPY(x) err |= __get_user(regs->x, &sc->x)
109 109
110#define COPY_SEG(seg) \ 110#define COPY_SEG(seg) \
111 { unsigned short tmp; \ 111 { unsigned short tmp; \
@@ -144,7 +144,7 @@ restore_sigcontext(struct pt_regs *regs, struct sigcontext __user *sc, int *peax
144 144
145 { 145 {
146 unsigned int tmpflags; 146 unsigned int tmpflags;
147 err |= __get_user(tmpflags, &sc->eflags); 147 err |= __get_user(tmpflags, &sc->flags);
148 regs->flags = (regs->flags & ~FIX_EFLAGS) | (tmpflags & FIX_EFLAGS); 148 regs->flags = (regs->flags & ~FIX_EFLAGS) | (tmpflags & FIX_EFLAGS);
149 regs->orig_ax = -1; /* disable syscall checks */ 149 regs->orig_ax = -1; /* disable syscall checks */
150 } 150 }
@@ -165,7 +165,7 @@ restore_sigcontext(struct pt_regs *regs, struct sigcontext __user *sc, int *peax
165 } 165 }
166 } 166 }
167 167
168 err |= __get_user(*peax, &sc->eax); 168 err |= __get_user(*peax, &sc->ax);
169 return err; 169 return err;
170 170
171badframe: 171badframe:
@@ -256,20 +256,20 @@ setup_sigcontext(struct sigcontext __user *sc, struct _fpstate __user *fpstate,
256 256
257 err |= __put_user(regs->es, (unsigned int __user *)&sc->es); 257 err |= __put_user(regs->es, (unsigned int __user *)&sc->es);
258 err |= __put_user(regs->ds, (unsigned int __user *)&sc->ds); 258 err |= __put_user(regs->ds, (unsigned int __user *)&sc->ds);
259 err |= __put_user(regs->di, &sc->edi); 259 err |= __put_user(regs->di, &sc->di);
260 err |= __put_user(regs->si, &sc->esi); 260 err |= __put_user(regs->si, &sc->si);
261 err |= __put_user(regs->bp, &sc->ebp); 261 err |= __put_user(regs->bp, &sc->bp);
262 err |= __put_user(regs->sp, &sc->esp); 262 err |= __put_user(regs->sp, &sc->sp);
263 err |= __put_user(regs->bx, &sc->ebx); 263 err |= __put_user(regs->bx, &sc->bx);
264 err |= __put_user(regs->dx, &sc->edx); 264 err |= __put_user(regs->dx, &sc->dx);
265 err |= __put_user(regs->cx, &sc->ecx); 265 err |= __put_user(regs->cx, &sc->cx);
266 err |= __put_user(regs->ax, &sc->eax); 266 err |= __put_user(regs->ax, &sc->ax);
267 err |= __put_user(current->thread.trap_no, &sc->trapno); 267 err |= __put_user(current->thread.trap_no, &sc->trapno);
268 err |= __put_user(current->thread.error_code, &sc->err); 268 err |= __put_user(current->thread.error_code, &sc->err);
269 err |= __put_user(regs->ip, &sc->eip); 269 err |= __put_user(regs->ip, &sc->ip);
270 err |= __put_user(regs->cs, (unsigned int __user *)&sc->cs); 270 err |= __put_user(regs->cs, (unsigned int __user *)&sc->cs);
271 err |= __put_user(regs->flags, &sc->eflags); 271 err |= __put_user(regs->flags, &sc->flags);
272 err |= __put_user(regs->sp, &sc->esp_at_signal); 272 err |= __put_user(regs->sp, &sc->sp_at_signal);
273 err |= __put_user(regs->ss, (unsigned int __user *)&sc->ss); 273 err |= __put_user(regs->ss, (unsigned int __user *)&sc->ss);
274 274
275 tmp = save_i387(fpstate); 275 tmp = save_i387(fpstate);
diff --git a/arch/x86/kernel/signal_64.c b/arch/x86/kernel/signal_64.c
index 4b228fd83b31..1c9bca56fb55 100644
--- a/arch/x86/kernel/signal_64.c
+++ b/arch/x86/kernel/signal_64.c
@@ -62,11 +62,10 @@ restore_sigcontext(struct pt_regs *regs, struct sigcontext __user *sc, unsigned
62 /* Always make any pending restarted system calls return -EINTR */ 62 /* Always make any pending restarted system calls return -EINTR */
63 current_thread_info()->restart_block.fn = do_no_restart_syscall; 63 current_thread_info()->restart_block.fn = do_no_restart_syscall;
64 64
65#define COPYR(x) err |= __get_user(regs->x, &sc->r ## x)
66#define COPY(x) err |= __get_user(regs->x, &sc->x) 65#define COPY(x) err |= __get_user(regs->x, &sc->x)
67 66
68 COPYR(di); COPYR(si); COPYR(bp); COPYR(sp); COPYR(bx); 67 COPY(di); COPY(si); COPY(bp); COPY(sp); COPY(bx);
69 COPYR(dx); COPYR(cx); COPYR(ip); 68 COPY(dx); COPY(cx); COPY(ip);
70 COPY(r8); 69 COPY(r8);
71 COPY(r9); 70 COPY(r9);
72 COPY(r10); 71 COPY(r10);
@@ -87,7 +86,7 @@ restore_sigcontext(struct pt_regs *regs, struct sigcontext __user *sc, unsigned
87 86
88 { 87 {
89 unsigned int tmpflags; 88 unsigned int tmpflags;
90 err |= __get_user(tmpflags, &sc->eflags); 89 err |= __get_user(tmpflags, &sc->flags);
91 regs->flags = (regs->flags & ~0x40DD5) | (tmpflags & 0x40DD5); 90 regs->flags = (regs->flags & ~0x40DD5) | (tmpflags & 0x40DD5);
92 regs->orig_ax = -1; /* disable syscall checks */ 91 regs->orig_ax = -1; /* disable syscall checks */
93 } 92 }
@@ -109,7 +108,7 @@ restore_sigcontext(struct pt_regs *regs, struct sigcontext __user *sc, unsigned
109 } 108 }
110 } 109 }
111 110
112 err |= __get_user(*prax, &sc->rax); 111 err |= __get_user(*prax, &sc->ax);
113 return err; 112 return err;
114 113
115badframe: 114badframe:
@@ -166,14 +165,14 @@ setup_sigcontext(struct sigcontext __user *sc, struct pt_regs *regs, unsigned lo
166 err |= __put_user(0, &sc->gs); 165 err |= __put_user(0, &sc->gs);
167 err |= __put_user(0, &sc->fs); 166 err |= __put_user(0, &sc->fs);
168 167
169 err |= __put_user(regs->di, &sc->rdi); 168 err |= __put_user(regs->di, &sc->di);
170 err |= __put_user(regs->si, &sc->rsi); 169 err |= __put_user(regs->si, &sc->si);
171 err |= __put_user(regs->bp, &sc->rbp); 170 err |= __put_user(regs->bp, &sc->bp);
172 err |= __put_user(regs->sp, &sc->rsp); 171 err |= __put_user(regs->sp, &sc->sp);
173 err |= __put_user(regs->bx, &sc->rbx); 172 err |= __put_user(regs->bx, &sc->bx);
174 err |= __put_user(regs->dx, &sc->rdx); 173 err |= __put_user(regs->dx, &sc->dx);
175 err |= __put_user(regs->cx, &sc->rcx); 174 err |= __put_user(regs->cx, &sc->cx);
176 err |= __put_user(regs->ax, &sc->rax); 175 err |= __put_user(regs->ax, &sc->ax);
177 err |= __put_user(regs->r8, &sc->r8); 176 err |= __put_user(regs->r8, &sc->r8);
178 err |= __put_user(regs->r9, &sc->r9); 177 err |= __put_user(regs->r9, &sc->r9);
179 err |= __put_user(regs->r10, &sc->r10); 178 err |= __put_user(regs->r10, &sc->r10);
@@ -184,8 +183,8 @@ setup_sigcontext(struct sigcontext __user *sc, struct pt_regs *regs, unsigned lo
184 err |= __put_user(regs->r15, &sc->r15); 183 err |= __put_user(regs->r15, &sc->r15);
185 err |= __put_user(me->thread.trap_no, &sc->trapno); 184 err |= __put_user(me->thread.trap_no, &sc->trapno);
186 err |= __put_user(me->thread.error_code, &sc->err); 185 err |= __put_user(me->thread.error_code, &sc->err);
187 err |= __put_user(regs->ip, &sc->rip); 186 err |= __put_user(regs->ip, &sc->ip);
188 err |= __put_user(regs->flags, &sc->eflags); 187 err |= __put_user(regs->flags, &sc->flags);
189 err |= __put_user(mask, &sc->oldmask); 188 err |= __put_user(mask, &sc->oldmask);
190 err |= __put_user(me->thread.cr2, &sc->cr2); 189 err |= __put_user(me->thread.cr2, &sc->cr2);
191 190
diff --git a/arch/x86/vdso/vdso32/sigreturn.S b/arch/x86/vdso/vdso32/sigreturn.S
index cade2752928b..31776d0efc8c 100644
--- a/arch/x86/vdso/vdso32/sigreturn.S
+++ b/arch/x86/vdso/vdso32/sigreturn.S
@@ -92,27 +92,27 @@ __kernel_rt_sigreturn:
92 .sleb128 offset; /* offset */ \ 92 .sleb128 offset; /* offset */ \
931: 931:
94 94
95 do_cfa_expr(IA32_SIGCONTEXT_esp+4) 95 do_cfa_expr(IA32_SIGCONTEXT_sp+4)
96 do_expr(0, IA32_SIGCONTEXT_eax+4) 96 do_expr(0, IA32_SIGCONTEXT_ax+4)
97 do_expr(1, IA32_SIGCONTEXT_ecx+4) 97 do_expr(1, IA32_SIGCONTEXT_cx+4)
98 do_expr(2, IA32_SIGCONTEXT_edx+4) 98 do_expr(2, IA32_SIGCONTEXT_dx+4)
99 do_expr(3, IA32_SIGCONTEXT_ebx+4) 99 do_expr(3, IA32_SIGCONTEXT_bx+4)
100 do_expr(5, IA32_SIGCONTEXT_ebp+4) 100 do_expr(5, IA32_SIGCONTEXT_bp+4)
101 do_expr(6, IA32_SIGCONTEXT_esi+4) 101 do_expr(6, IA32_SIGCONTEXT_si+4)
102 do_expr(7, IA32_SIGCONTEXT_edi+4) 102 do_expr(7, IA32_SIGCONTEXT_di+4)
103 do_expr(8, IA32_SIGCONTEXT_eip+4) 103 do_expr(8, IA32_SIGCONTEXT_ip+4)
104 104
105 .byte 0x42 /* DW_CFA_advance_loc 2 -- nop; popl eax. */ 105 .byte 0x42 /* DW_CFA_advance_loc 2 -- nop; popl eax. */
106 106
107 do_cfa_expr(IA32_SIGCONTEXT_esp) 107 do_cfa_expr(IA32_SIGCONTEXT_sp)
108 do_expr(0, IA32_SIGCONTEXT_eax) 108 do_expr(0, IA32_SIGCONTEXT_ax)
109 do_expr(1, IA32_SIGCONTEXT_ecx) 109 do_expr(1, IA32_SIGCONTEXT_cx)
110 do_expr(2, IA32_SIGCONTEXT_edx) 110 do_expr(2, IA32_SIGCONTEXT_dx)
111 do_expr(3, IA32_SIGCONTEXT_ebx) 111 do_expr(3, IA32_SIGCONTEXT_bx)
112 do_expr(5, IA32_SIGCONTEXT_ebp) 112 do_expr(5, IA32_SIGCONTEXT_bp)
113 do_expr(6, IA32_SIGCONTEXT_esi) 113 do_expr(6, IA32_SIGCONTEXT_si)
114 do_expr(7, IA32_SIGCONTEXT_edi) 114 do_expr(7, IA32_SIGCONTEXT_di)
115 do_expr(8, IA32_SIGCONTEXT_eip) 115 do_expr(8, IA32_SIGCONTEXT_ip)
116 116
117 .align 4 117 .align 4
118.LENDFDEDLSI1: 118.LENDFDEDLSI1:
@@ -129,15 +129,15 @@ __kernel_rt_sigreturn:
129 slightly less complicated than the above, since we don't 129 slightly less complicated than the above, since we don't
130 modify the stack pointer in the process. */ 130 modify the stack pointer in the process. */
131 131
132 do_cfa_expr(IA32_RT_SIGFRAME_sigcontext-4 + IA32_SIGCONTEXT_esp) 132 do_cfa_expr(IA32_RT_SIGFRAME_sigcontext-4 + IA32_SIGCONTEXT_sp)
133 do_expr(0, IA32_RT_SIGFRAME_sigcontext-4 + IA32_SIGCONTEXT_eax) 133 do_expr(0, IA32_RT_SIGFRAME_sigcontext-4 + IA32_SIGCONTEXT_ax)
134 do_expr(1, IA32_RT_SIGFRAME_sigcontext-4 + IA32_SIGCONTEXT_ecx) 134 do_expr(1, IA32_RT_SIGFRAME_sigcontext-4 + IA32_SIGCONTEXT_cx)
135 do_expr(2, IA32_RT_SIGFRAME_sigcontext-4 + IA32_SIGCONTEXT_edx) 135 do_expr(2, IA32_RT_SIGFRAME_sigcontext-4 + IA32_SIGCONTEXT_dx)
136 do_expr(3, IA32_RT_SIGFRAME_sigcontext-4 + IA32_SIGCONTEXT_ebx) 136 do_expr(3, IA32_RT_SIGFRAME_sigcontext-4 + IA32_SIGCONTEXT_bx)
137 do_expr(5, IA32_RT_SIGFRAME_sigcontext-4 + IA32_SIGCONTEXT_ebp) 137 do_expr(5, IA32_RT_SIGFRAME_sigcontext-4 + IA32_SIGCONTEXT_bp)
138 do_expr(6, IA32_RT_SIGFRAME_sigcontext-4 + IA32_SIGCONTEXT_esi) 138 do_expr(6, IA32_RT_SIGFRAME_sigcontext-4 + IA32_SIGCONTEXT_si)
139 do_expr(7, IA32_RT_SIGFRAME_sigcontext-4 + IA32_SIGCONTEXT_edi) 139 do_expr(7, IA32_RT_SIGFRAME_sigcontext-4 + IA32_SIGCONTEXT_di)
140 do_expr(8, IA32_RT_SIGFRAME_sigcontext-4 + IA32_SIGCONTEXT_eip) 140 do_expr(8, IA32_RT_SIGFRAME_sigcontext-4 + IA32_SIGCONTEXT_ip)
141 141
142 .align 4 142 .align 4
143.LENDFDEDLSI2: 143.LENDFDEDLSI2:
diff --git a/include/asm-x86/sigcontext.h b/include/asm-x86/sigcontext.h
index c047f9dc3423..681deade5f00 100644
--- a/include/asm-x86/sigcontext.h
+++ b/include/asm-x86/sigcontext.h
@@ -63,20 +63,20 @@ struct sigcontext {
63 unsigned short fs, __fsh; 63 unsigned short fs, __fsh;
64 unsigned short es, __esh; 64 unsigned short es, __esh;
65 unsigned short ds, __dsh; 65 unsigned short ds, __dsh;
66 unsigned long edi; 66 unsigned long di;
67 unsigned long esi; 67 unsigned long si;
68 unsigned long ebp; 68 unsigned long bp;
69 unsigned long esp; 69 unsigned long sp;
70 unsigned long ebx; 70 unsigned long bx;
71 unsigned long edx; 71 unsigned long dx;
72 unsigned long ecx; 72 unsigned long cx;
73 unsigned long eax; 73 unsigned long ax;
74 unsigned long trapno; 74 unsigned long trapno;
75 unsigned long err; 75 unsigned long err;
76 unsigned long eip; 76 unsigned long ip;
77 unsigned short cs, __csh; 77 unsigned short cs, __csh;
78 unsigned long eflags; 78 unsigned long flags;
79 unsigned long esp_at_signal; 79 unsigned long sp_at_signal;
80 unsigned short ss, __ssh; 80 unsigned short ss, __ssh;
81 struct _fpstate __user * fpstate; 81 struct _fpstate __user * fpstate;
82 unsigned long oldmask; 82 unsigned long oldmask;
@@ -111,16 +111,16 @@ struct sigcontext {
111 unsigned long r13; 111 unsigned long r13;
112 unsigned long r14; 112 unsigned long r14;
113 unsigned long r15; 113 unsigned long r15;
114 unsigned long rdi; 114 unsigned long di;
115 unsigned long rsi; 115 unsigned long si;
116 unsigned long rbp; 116 unsigned long bp;
117 unsigned long rbx; 117 unsigned long bx;
118 unsigned long rdx; 118 unsigned long dx;
119 unsigned long rax; 119 unsigned long ax;
120 unsigned long rcx; 120 unsigned long cx;
121 unsigned long rsp; 121 unsigned long sp;
122 unsigned long rip; 122 unsigned long ip;
123 unsigned long eflags; /* RFLAGS */ 123 unsigned long flags;
124 unsigned short cs; 124 unsigned short cs;
125 unsigned short gs; 125 unsigned short gs;
126 unsigned short fs; 126 unsigned short fs;
diff --git a/include/asm-x86/sigcontext32.h b/include/asm-x86/sigcontext32.h
index 3d657038ab7c..6ffab4fd593a 100644
--- a/include/asm-x86/sigcontext32.h
+++ b/include/asm-x86/sigcontext32.h
@@ -48,20 +48,20 @@ struct sigcontext_ia32 {
48 unsigned short fs, __fsh; 48 unsigned short fs, __fsh;
49 unsigned short es, __esh; 49 unsigned short es, __esh;
50 unsigned short ds, __dsh; 50 unsigned short ds, __dsh;
51 unsigned int edi; 51 unsigned int di;
52 unsigned int esi; 52 unsigned int si;
53 unsigned int ebp; 53 unsigned int bp;
54 unsigned int esp; 54 unsigned int sp;
55 unsigned int ebx; 55 unsigned int bx;
56 unsigned int edx; 56 unsigned int dx;
57 unsigned int ecx; 57 unsigned int cx;
58 unsigned int eax; 58 unsigned int ax;
59 unsigned int trapno; 59 unsigned int trapno;
60 unsigned int err; 60 unsigned int err;
61 unsigned int eip; 61 unsigned int ip;
62 unsigned short cs, __csh; 62 unsigned short cs, __csh;
63 unsigned int eflags; 63 unsigned int flags;
64 unsigned int esp_at_signal; 64 unsigned int sp_at_signal;
65 unsigned short ss, __ssh; 65 unsigned short ss, __ssh;
66 unsigned int fpstate; /* really (struct _fpstate_ia32 *) */ 66 unsigned int fpstate; /* really (struct _fpstate_ia32 *) */
67 unsigned int oldmask; 67 unsigned int oldmask;