aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/entry/entry_32.S
diff options
context:
space:
mode:
authorDenys Vlasenko <dvlasenk@redhat.com>2015-06-08 16:35:33 -0400
committerIngo Molnar <mingo@kernel.org>2015-06-09 05:48:24 -0400
commit9b47feb708e50e6114b4b4193eee67f2e5af9d05 (patch)
tree11fd570de01a43a8c3ddfe0ce67dcc8413e6259d /arch/x86/entry/entry_32.S
parentbace7117d3fb59a6ed7ea1aa6c8994df6a28a72a (diff)
x86/asm/entry: Clean up entry*.S style, final bits
A few bits were missed. Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com> Cc: Andrew Morton <akpm@linux-foundation.org> Cc: H. Peter Anvin <hpa@zytor.com> Cc: Linus Torvalds <torvalds@linux-foundation.org> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'arch/x86/entry/entry_32.S')
-rw-r--r--arch/x86/entry/entry_32.S18
1 files changed, 9 insertions, 9 deletions
diff --git a/arch/x86/entry/entry_32.S b/arch/x86/entry/entry_32.S
index edd7aadfacfa..21dc60a60b5f 100644
--- a/arch/x86/entry/entry_32.S
+++ b/arch/x86/entry/entry_32.S
@@ -12,7 +12,7 @@
12 * 0(%esp) - %ebx 12 * 0(%esp) - %ebx
13 * 4(%esp) - %ecx 13 * 4(%esp) - %ecx
14 * 8(%esp) - %edx 14 * 8(%esp) - %edx
15 * C(%esp) - %esi 15 * C(%esp) - %esi
16 * 10(%esp) - %edi 16 * 10(%esp) - %edi
17 * 14(%esp) - %ebp 17 * 14(%esp) - %ebp
18 * 18(%esp) - %eax 18 * 18(%esp) - %eax
@@ -128,7 +128,7 @@
128.macro POP_GS pop=0 128.macro POP_GS pop=0
12998: popl %gs 12998: popl %gs
130 .if \pop <> 0 130 .if \pop <> 0
131 add $\pop, %esp 131 add $\pop, %esp
132 .endif 132 .endif
133.endm 133.endm
134.macro POP_GS_EX 134.macro POP_GS_EX
@@ -487,8 +487,8 @@ ldt_ss:
487 mov %esp, %edx /* load kernel esp */ 487 mov %esp, %edx /* load kernel esp */
488 mov PT_OLDESP(%esp), %eax /* load userspace esp */ 488 mov PT_OLDESP(%esp), %eax /* load userspace esp */
489 mov %dx, %ax /* eax: new kernel esp */ 489 mov %dx, %ax /* eax: new kernel esp */
490 sub %eax, %edx /* offset (low word is 0) */ 490 sub %eax, %edx /* offset (low word is 0) */
491 shr $16, %edx 491 shr $16, %edx
492 mov %dl, GDT_ESPFIX_SS + 4 /* bits 16..23 */ 492 mov %dl, GDT_ESPFIX_SS + 4 /* bits 16..23 */
493 mov %dh, GDT_ESPFIX_SS + 7 /* bits 24..31 */ 493 mov %dh, GDT_ESPFIX_SS + 7 /* bits 24..31 */
494 pushl $__ESPFIX_SS 494 pushl $__ESPFIX_SS
@@ -507,7 +507,7 @@ ENDPROC(entry_INT80_32)
507 # perform work that needs to be done immediately before resumption 507 # perform work that needs to be done immediately before resumption
508 ALIGN 508 ALIGN
509work_pending: 509work_pending:
510 testb $_TIF_NEED_RESCHED, %cl 510 testb $_TIF_NEED_RESCHED, %cl
511 jz work_notifysig 511 jz work_notifysig
512work_resched: 512work_resched:
513 call schedule 513 call schedule
@@ -520,7 +520,7 @@ work_resched:
520 andl $_TIF_WORK_MASK, %ecx # is there any work to be done other 520 andl $_TIF_WORK_MASK, %ecx # is there any work to be done other
521 # than syscall tracing? 521 # than syscall tracing?
522 jz restore_all 522 jz restore_all
523 testb $_TIF_NEED_RESCHED, %cl 523 testb $_TIF_NEED_RESCHED, %cl
524 jnz work_resched 524 jnz work_resched
525 525
526work_notifysig: # deal with pending signals and 526work_notifysig: # deal with pending signals and
@@ -537,8 +537,8 @@ work_notifysig: # deal with pending signals and
537 TRACE_IRQS_ON 537 TRACE_IRQS_ON
538 ENABLE_INTERRUPTS(CLBR_NONE) 538 ENABLE_INTERRUPTS(CLBR_NONE)
539 movb PT_CS(%esp), %bl 539 movb PT_CS(%esp), %bl
540 andb $SEGMENT_RPL_MASK, %bl 540 andb $SEGMENT_RPL_MASK, %bl
541 cmpb $USER_RPL, %bl 541 cmpb $USER_RPL, %bl
542 jb resume_kernel 542 jb resume_kernel
543 xorl %edx, %edx 543 xorl %edx, %edx
544 call do_notify_resume 544 call do_notify_resume
@@ -609,7 +609,7 @@ END(sysenter_badsys)
609 /* fixup the stack */ 609 /* fixup the stack */
610 mov GDT_ESPFIX_SS + 4, %al /* bits 16..23 */ 610 mov GDT_ESPFIX_SS + 4, %al /* bits 16..23 */
611 mov GDT_ESPFIX_SS + 7, %ah /* bits 24..31 */ 611 mov GDT_ESPFIX_SS + 7, %ah /* bits 24..31 */
612 shl $16, %eax 612 shl $16, %eax
613 addl %esp, %eax /* the adjusted stack pointer */ 613 addl %esp, %eax /* the adjusted stack pointer */
614 pushl $__KERNEL_DS 614 pushl $__KERNEL_DS
615 pushl %eax 615 pushl %eax