Displaying 20 results from an estimated 39 matches for "ldt_ss".
2007 Apr 18
1
Patch: use .pushsection/.popsection
...quot;
iret_exc:
TRACE_IRQS_ON
ENABLE_INTERRUPTS
pushl $0 # no error code
pushl $do_iret_error
jmp error_code
-.previous
-.section __ex_table,"a"
+.popsection
+.pushsection __ex_table,"a"
.align 4
.long 1b,iret_exc
-.previous
+.popsection
=
CFI_RESTORE_STATE
ldt_ss:
@@ -415,11 +415,11 @@ ldt_ss:
TRACE_IRQS_IRET
RESTORE_REGS
lss 20+4(%esp), %esp # switch to 16bit stack
-1: INTERRUPT_RETURN
-.section __ex_table,"a"
+1: iret
+.pushsection __ex_table,"a"
.align 4
.long 1b,iret_exc
-.previous
+.popsection
CFI_ENDPROC
=
# perform...
2007 Apr 18
1
Patch: use .pushsection/.popsection
...quot;
iret_exc:
TRACE_IRQS_ON
ENABLE_INTERRUPTS
pushl $0 # no error code
pushl $do_iret_error
jmp error_code
-.previous
-.section __ex_table,"a"
+.popsection
+.pushsection __ex_table,"a"
.align 4
.long 1b,iret_exc
-.previous
+.popsection
=
CFI_RESTORE_STATE
ldt_ss:
@@ -415,11 +415,11 @@ ldt_ss:
TRACE_IRQS_IRET
RESTORE_REGS
lss 20+4(%esp), %esp # switch to 16bit stack
-1: INTERRUPT_RETURN
-.section __ex_table,"a"
+1: iret
+.pushsection __ex_table,"a"
.align 4
.long 1b,iret_exc
-.previous
+.popsection
CFI_ENDPROC
=
# perform...
2007 Apr 18
2
[patch 3/8] Allow a kernel to not be in ring 0.
...mments in process.c:copy_thread() for details.
movb OLDSS(%esp), %ah
movb CS(%esp), %al
- andl $(VM_MASK | (4 << 8) | 3), %eax
- cmpl $((4 << 8) | 3), %eax
+ andl $(VM_MASK | (4 << 8) | SEGMENT_RPL_MASK), %eax
+ cmpl $((4 << 8) | USER_RPL), %eax
CFI_REMEMBER_STATE
je ldt_ss # returning to user-space with LDT SS
restore_nocheck:
--- 2.6.18-rc3-32.orig/arch/i386/kernel/process.c
+++ 2.6.18-rc3-32/arch/i386/kernel/process.c
@@ -346,7 +346,7 @@ int kernel_thread(int (*fn)(void *), voi
regs.xes = __USER_DS;
regs.orig_eax = -1;
regs.eip = (unsigned long) kernel_thr...
2007 Apr 18
2
[patch 3/8] Allow a kernel to not be in ring 0.
...mments in process.c:copy_thread() for details.
movb OLDSS(%esp), %ah
movb CS(%esp), %al
- andl $(VM_MASK | (4 << 8) | 3), %eax
- cmpl $((4 << 8) | 3), %eax
+ andl $(VM_MASK | (4 << 8) | SEGMENT_RPL_MASK), %eax
+ cmpl $((4 << 8) | USER_RPL), %eax
CFI_REMEMBER_STATE
je ldt_ss # returning to user-space with LDT SS
restore_nocheck:
--- 2.6.18-rc3-32.orig/arch/i386/kernel/process.c
+++ 2.6.18-rc3-32/arch/i386/kernel/process.c
@@ -346,7 +346,7 @@ int kernel_thread(int (*fn)(void *), voi
regs.xes = __USER_DS;
regs.orig_eax = -1;
regs.eip = (unsigned long) kernel_thr...
2007 Apr 18
0
[PATCH 17/21] i386 Ldt cleanups 1
...restore_all:
# See comments in process.c:copy_thread() for details.
movb OLDSS(%esp), %ah
movb CS(%esp), %al
- andl $(VM_MASK | (4 << 8) | 3), %eax
- cmpl $((4 << 8) | 3), %eax
+ andl $(VM_MASK | (LDT_SEGMENT << 8) | 3), %eax
+ cmpl $((LDT_SEGMENT << 8) | 3), %eax
je ldt_ss # returning to user-space with LDT SS
restore_nocheck:
RESTORE_REGS
Index: linux-2.6.14-zach-work/arch/i386/kernel/ptrace.c
===================================================================
--- linux-2.6.14-zach-work.orig/arch/i386/kernel/ptrace.c 2005-11-04 18:30:27.000000000 -0800
+++ linu...
2007 Apr 18
0
[PATCH 17/21] i386 Ldt cleanups 1
...restore_all:
# See comments in process.c:copy_thread() for details.
movb OLDSS(%esp), %ah
movb CS(%esp), %al
- andl $(VM_MASK | (4 << 8) | 3), %eax
- cmpl $((4 << 8) | 3), %eax
+ andl $(VM_MASK | (LDT_SEGMENT << 8) | 3), %eax
+ cmpl $((LDT_SEGMENT << 8) | 3), %eax
je ldt_ss # returning to user-space with LDT SS
restore_nocheck:
RESTORE_REGS
Index: linux-2.6.14-zach-work/arch/i386/kernel/ptrace.c
===================================================================
--- linux-2.6.14-zach-work.orig/arch/i386/kernel/ptrace.c 2005-11-04 18:30:27.000000000 -0800
+++ linu...
2007 Apr 18
1
[PATCH 6/14] i386 / Add some segment convenience functions
...,8 +268,8 @@
# See comments in process.c:copy_thread() for details.
movb OLDSS(%esp), %ah
movb CS(%esp), %al
- andl $(VM_MASK | (4 << 8) | 3), %eax
- cmpl $((4 << 8) | 3), %eax
+ andl $(VM_MASK | (LDT_SEGMENT << 8) | 3), %eax
+ cmpl $((LDT_SEGMENT << 8) | 3), %eax
je ldt_ss # returning to user-space with LDT SS
restore_nocheck:
RESTORE_REGS
Index: linux-2.6.13/arch/i386/mm/fault.c
===================================================================
--- linux-2.6.13.orig/arch/i386/mm/fault.c 2005-08-09 19:43:38.000000000 -0700
+++ linux-2.6.13/arch/i386/mm/fault.c...
2007 Apr 18
1
[PATCH 6/14] i386 / Add some segment convenience functions
...,8 +268,8 @@
# See comments in process.c:copy_thread() for details.
movb OLDSS(%esp), %ah
movb CS(%esp), %al
- andl $(VM_MASK | (4 << 8) | 3), %eax
- cmpl $((4 << 8) | 3), %eax
+ andl $(VM_MASK | (LDT_SEGMENT << 8) | 3), %eax
+ cmpl $((LDT_SEGMENT << 8) | 3), %eax
je ldt_ss # returning to user-space with LDT SS
restore_nocheck:
RESTORE_REGS
Index: linux-2.6.13/arch/i386/mm/fault.c
===================================================================
--- linux-2.6.13.orig/arch/i386/mm/fault.c 2005-08-09 19:43:38.000000000 -0700
+++ linux-2.6.13/arch/i386/mm/fault.c...
2007 Apr 18
1
[PATCH] Slight cleanups for x86 ring macros (against rc3-mm2)
..._thread() for details.
movb OLDSS(%esp), %ah
movb CS(%esp), %al
- andl $(VM_MASK | (4 << 8) | 3), %eax
- cmpl $((4 << 8) | 3), %eax
+ andl $(VM_MASK | (SEGMENT_TI_MASK << 8) | SEGMENT_RPL_MASK), %eax
+ cmpl $((SEGMENT_LDT << 8) | USER_RPL), %eax
CFI_REMEMBER_STATE
je ldt_ss # returning to user-space with LDT SS
restore_nocheck:
diff -r d8064f9b5964 include/asm-i386/ptrace.h
--- a/include/asm-i386/ptrace.h Mon Aug 07 13:30:17 2006 +1000
+++ b/include/asm-i386/ptrace.h Mon Aug 07 14:32:11 2006 +1000
@@ -74,11 +74,11 @@ extern void send_sigtrap(struct task_str
*/
s...
2007 Apr 18
1
[PATCH] Slight cleanups for x86 ring macros (against rc3-mm2)
..._thread() for details.
movb OLDSS(%esp), %ah
movb CS(%esp), %al
- andl $(VM_MASK | (4 << 8) | 3), %eax
- cmpl $((4 << 8) | 3), %eax
+ andl $(VM_MASK | (SEGMENT_TI_MASK << 8) | SEGMENT_RPL_MASK), %eax
+ cmpl $((SEGMENT_LDT << 8) | USER_RPL), %eax
CFI_REMEMBER_STATE
je ldt_ss # returning to user-space with LDT SS
restore_nocheck:
diff -r d8064f9b5964 include/asm-i386/ptrace.h
--- a/include/asm-i386/ptrace.h Mon Aug 07 13:30:17 2006 +1000
+++ b/include/asm-i386/ptrace.h Mon Aug 07 14:32:11 2006 +1000
@@ -74,11 +74,11 @@ extern void send_sigtrap(struct task_str
*/
s...
2007 Apr 18
1
[PATCH 1/2] Transparent entry.S IRQ holdoff handling
...and the iret
#ifdef CONFIG_TRAP_BAD_SYSCALL_EXITS
@@ -274,10 +273,10 @@ restore_all:
restore_nocheck:
RESTORE_REGS
addl $4, %esp
-1: iret
+1: IRET
.section .fixup,"ax"
iret_exc:
- sti
+ STI
pushl $0 # no error code
pushl $do_iret_error
jmp error_code
@@ -299,14 +298,14 @@ ldt_ss:
* CPUs, which we can try to work around to make
* dosemu and wine happy. */
subl $8, %esp # reserve space for switch16 pointer
- cli
+ CLI
movl %esp, %eax
/* Set up the 16bit stack frame with switch32 pointer on top,
* and a switch16 pointer on top of the current frame. */
call s...
2007 Apr 18
1
[PATCH 1/2] Transparent entry.S IRQ holdoff handling
...and the iret
#ifdef CONFIG_TRAP_BAD_SYSCALL_EXITS
@@ -274,10 +273,10 @@ restore_all:
restore_nocheck:
RESTORE_REGS
addl $4, %esp
-1: iret
+1: IRET
.section .fixup,"ax"
iret_exc:
- sti
+ STI
pushl $0 # no error code
pushl $do_iret_error
jmp error_code
@@ -299,14 +298,14 @@ ldt_ss:
* CPUs, which we can try to work around to make
* dosemu and wine happy. */
subl $8, %esp # reserve space for switch16 pointer
- cli
+ CLI
movl %esp, %eax
/* Set up the 16bit stack frame with switch32 pointer on top,
* and a switch16 pointer on top of the current frame. */
call s...
2007 Apr 19
0
[RFC, PATCH 3/5] Paravirt_ops pure functions.patch
...virt_enabled && c->x86 == 5) {
static int f00f_workaround_enabled = 0;
c->f00f_bug = 1;
diff -r a6889086a657 arch/i386/kernel/entry.S
--- a/arch/i386/kernel/entry.S Thu Apr 19 15:44:49 2007 -0700
+++ b/arch/i386/kernel/entry.S Thu Apr 19 15:58:47 2007 -0700
@@ -436,7 +436,7 @@ ldt_ss:
* is still available to implement the setting of the high
* 16-bits in the INTERRUPT_RETURN paravirt-op.
*/
- cmpl $0, paravirt_ops+PARAVIRT_enabled
+ cmpl $0, paravirt_enabled
jne restore_nocheck
#endif
diff -r a6889086a657 arch/i386/kernel/vmi.c
--- a/arch/i386/kernel/vmi.c Thu Apr...
2007 Apr 19
0
[RFC, PATCH 3/5] Paravirt_ops pure functions.patch
...virt_enabled && c->x86 == 5) {
static int f00f_workaround_enabled = 0;
c->f00f_bug = 1;
diff -r a6889086a657 arch/i386/kernel/entry.S
--- a/arch/i386/kernel/entry.S Thu Apr 19 15:44:49 2007 -0700
+++ b/arch/i386/kernel/entry.S Thu Apr 19 15:58:47 2007 -0700
@@ -436,7 +436,7 @@ ldt_ss:
* is still available to implement the setting of the high
* 16-bits in the INTERRUPT_RETURN paravirt-op.
*/
- cmpl $0, paravirt_ops+PARAVIRT_enabled
+ cmpl $0, paravirt_enabled
jne restore_nocheck
#endif
diff -r a6889086a657 arch/i386/kernel/vmi.c
--- a/arch/i386/kernel/vmi.c Thu Apr...
2007 May 21
2
changing definition of paravirt_ops.iret
...T_RETURN
-.section .fixup,"ax"
+ INTERRUPT_RETURN
+
iret_exc:
TRACE_IRQS_ON
ENABLE_INTERRUPTS(CLBR_NONE)
pushl $0 # no error code
pushl $do_iret_error
jmp error_code
-.previous
-.section __ex_table,"a"
- .align 4
- .long 1b,iret_exc
-.previous
CFI_RESTORE_STATE
ldt_ss:
@@ -863,21 +855,22 @@ nmi_espfix_stack:
RESTORE_REGS
lss 12+4(%esp), %esp # back to espfix stack
CFI_ADJUST_CFA_OFFSET -24
-1: INTERRUPT_RETURN
- CFI_ENDPROC
+ INTERRUPT_RETURN
+ CFI_ENDPROC
+KPROBE_END(nmi)
+
+#ifdef CONFIG_PARAVIRT
+ENTRY(native_iret)
+1: popl %fs
+2: iret
+.pushsection ....
2007 May 21
2
changing definition of paravirt_ops.iret
...T_RETURN
-.section .fixup,"ax"
+ INTERRUPT_RETURN
+
iret_exc:
TRACE_IRQS_ON
ENABLE_INTERRUPTS(CLBR_NONE)
pushl $0 # no error code
pushl $do_iret_error
jmp error_code
-.previous
-.section __ex_table,"a"
- .align 4
- .long 1b,iret_exc
-.previous
CFI_RESTORE_STATE
ldt_ss:
@@ -863,21 +855,22 @@ nmi_espfix_stack:
RESTORE_REGS
lss 12+4(%esp), %esp # back to espfix stack
CFI_ADJUST_CFA_OFFSET -24
-1: INTERRUPT_RETURN
- CFI_ENDPROC
+ INTERRUPT_RETURN
+ CFI_ENDPROC
+KPROBE_END(nmi)
+
+#ifdef CONFIG_PARAVIRT
+ENTRY(native_iret)
+1: popl %fs
+2: iret
+.pushsection ....
2007 Apr 18
1
[RFC, PATCH 8/24] i386 Vmi syscall assembly
...$4, %esp
-1: iret
-.section .fixup,"ax"
+1: IRET
+.pushsection .fixup,"ax"
iret_exc:
- sti
+ STI
pushl $0 # no error code
pushl $do_iret_error
jmp error_code
-.previous
+.popsection
.section __ex_table,"a"
.align 4
.long 1b,iret_exc
@@ -281,14 +281,14 @@ ldt_ss:
* CPUs, which we can try to work around to make
* dosemu and wine happy. */
subl $8, %esp # reserve space for switch16 pointer
- cli
+ CLI
movl %esp, %eax
/* Set up the 16bit stack frame with switch32 pointer on top,
* and a switch16 pointer on top of the current frame. */
call s...
2007 Apr 18
1
[RFC, PATCH 8/24] i386 Vmi syscall assembly
...$4, %esp
-1: iret
-.section .fixup,"ax"
+1: IRET
+.pushsection .fixup,"ax"
iret_exc:
- sti
+ STI
pushl $0 # no error code
pushl $do_iret_error
jmp error_code
-.previous
+.popsection
.section __ex_table,"a"
.align 4
.long 1b,iret_exc
@@ -281,14 +281,14 @@ ldt_ss:
* CPUs, which we can try to work around to make
* dosemu and wine happy. */
subl $8, %esp # reserve space for switch16 pointer
- cli
+ CLI
movl %esp, %eax
/* Set up the 16bit stack frame with switch32 pointer on top,
* and a switch16 pointer on top of the current frame. */
call s...
2007 Apr 18
8
[patch 0/8] Basic infrastructure patches for a paravirtualized kernel
Hi Andrew,
This series of patches lays the basic ground work for the
paravirtualized kernel patches coming later on. I think this lot is
ready for the rough-and-tumble world of the -mm tree.
The main change from the last posting is that all the page-table
related patches have been moved out, and will be posted separately.
Also, the off-by-one in reserving the top of address space has been
2007 Apr 18
8
[patch 0/8] Basic infrastructure patches for a paravirtualized kernel
Hi Andrew,
This series of patches lays the basic ground work for the
paravirtualized kernel patches coming later on. I think this lot is
ready for the rough-and-tumble world of the -mm tree.
The main change from the last posting is that all the page-table
related patches have been moved out, and will be posted separately.
Also, the off-by-one in reserving the top of address space has been