search for: __ex_table

Displaying 20 results from an estimated 100 matches for "__ex_table".

2007 Apr 18
1
Patch: use .pushsection/.popsection
...ug 08 10:36:17 2006 -0700 @@ -162,17 +162,17 @@ 2: popl %es; \ 2: popl %es; \ CFI_ADJUST_CFA_OFFSET -4;\ /*CFI_RESTORE es;*/\ -.section .fixup,"ax"; \ +.pushsection .fixup,"ax"; \ 3: movl $0,(%esp); \ jmp 1b; \ 4: movl $0,(%esp); \ jmp 2b; \ -.previous; \ -.section __ex_table,"a";\ +.popsection \ +.pushsection __ex_table,"a";\ .align 4; \ .long 1b,3b; \ .long 2b,4b; \ -.previous +.popsection = #define RING0_INT_FRAME \ CFI_STARTPROC simple;\ @@ -300,10 +300,10 @@ sysenter_past_esp: cmpl $__PAGE_OFFSET-3,%ebp jae syscall_fault 1: movl...
2007 Apr 18
1
Patch: use .pushsection/.popsection
...ug 08 10:36:17 2006 -0700 @@ -162,17 +162,17 @@ 2: popl %es; \ 2: popl %es; \ CFI_ADJUST_CFA_OFFSET -4;\ /*CFI_RESTORE es;*/\ -.section .fixup,"ax"; \ +.pushsection .fixup,"ax"; \ 3: movl $0,(%esp); \ jmp 1b; \ 4: movl $0,(%esp); \ jmp 2b; \ -.previous; \ -.section __ex_table,"a";\ +.popsection \ +.pushsection __ex_table,"a";\ .align 4; \ .long 1b,3b; \ .long 2b,4b; \ -.previous +.popsection = #define RING0_INT_FRAME \ CFI_STARTPROC simple;\ @@ -300,10 +300,10 @@ sysenter_past_esp: cmpl $__PAGE_OFFSET-3,%ebp jae syscall_fault 1: movl...
2007 May 21
2
changing definition of paravirt_ops.iret
...pl %es; \ 2: popl %es; \ CFI_ADJUST_CFA_OFFSET -4;\ /*CFI_RESTORE es;*/\ -3: popl %fs; \ - CFI_ADJUST_CFA_OFFSET -4;\ - /*CFI_RESTORE fs;*/\ .pushsection .fixup,"ax"; \ 4: movl $0,(%esp); \ jmp 1b; \ 5: movl $0,(%esp); \ jmp 2b; \ -6: movl $0,(%esp); \ - jmp 3b; \ .section __ex_table,"a";\ .align 4; \ .long 1b,4b; \ .long 2b,5b; \ - .long 3b,6b; \ .popsection #define RING0_INT_FRAME \ @@ -406,19 +403,14 @@ restore_nocheck_notrace: RESTORE_REGS addl $4, %esp # skip orig_eax/error_code CFI_ADJUST_CFA_OFFSET -4 -1: INTERRUPT_RETURN -.section .fixup,&quo...
2007 May 21
2
changing definition of paravirt_ops.iret
...pl %es; \ 2: popl %es; \ CFI_ADJUST_CFA_OFFSET -4;\ /*CFI_RESTORE es;*/\ -3: popl %fs; \ - CFI_ADJUST_CFA_OFFSET -4;\ - /*CFI_RESTORE fs;*/\ .pushsection .fixup,"ax"; \ 4: movl $0,(%esp); \ jmp 1b; \ 5: movl $0,(%esp); \ jmp 2b; \ -6: movl $0,(%esp); \ - jmp 3b; \ .section __ex_table,"a";\ .align 4; \ .long 1b,4b; \ .long 2b,5b; \ - .long 3b,6b; \ .popsection #define RING0_INT_FRAME \ @@ -406,19 +403,14 @@ restore_nocheck_notrace: RESTORE_REGS addl $4, %esp # skip orig_eax/error_code CFI_ADJUST_CFA_OFFSET -4 -1: INTERRUPT_RETURN -.section .fixup,&quo...
2007 Apr 18
0
[RFC/PATCH PV_OPS X86_64 02/17] paravirt_ops - msr
...sr_safe(unsigned int msr, unsigned long val) +{ + int err; + asm volatile("2: wrmsr ; xorl %0,%0\n" + "1:\n\t" + ".section .fixup,\"ax\"\n\t" + "3: movl %4,%0 ; jmp 1b\n\t" + ".previous\n\t" + ".section __ex_table,\"a\"\n" + " .align 8\n\t" + " .quad 2b,3b\n\t" + ".previous" + : "=a" (err) + : "c" (msr), "0" ((u32)val), "d" ((u32)(val>>32)), + "i" (-EFAULT)); + return...
2007 Apr 18
0
[RFC/PATCH PV_OPS X86_64 02/17] paravirt_ops - msr
...sr_safe(unsigned int msr, unsigned long val) +{ + int err; + asm volatile("2: wrmsr ; xorl %0,%0\n" + "1:\n\t" + ".section .fixup,\"ax\"\n\t" + "3: movl %4,%0 ; jmp 1b\n\t" + ".previous\n\t" + ".section __ex_table,\"a\"\n" + " .align 8\n\t" + " .quad 2b,3b\n\t" + ".previous" + : "=a" (err) + : "c" (msr), "0" ((u32)val), "d" ((u32)(val>>32)), + "i" (-EFAULT)); + return...
2007 Apr 18
0
[patch 2/9] Guest page hinting: unused / free pages on s390.
...b +8: jnz 1b 3: slgr %r2,%r2 br %r14 4: lghi %r0,-4096 @@ -39,13 +39,16 @@ __copy_from_user_asm: jnh 6f # no, the current page faulted # move with the reduced length which is < 256 5: mvcp 0(%r5,%r2),0(%r4),%r0 - slgr %r3,%r5 +9: slgr %r3,%r5 6: lgr %r2,%r3 br %r14 .section __ex_table,"a" .quad 0b,4b .quad 2b,4b .quad 5b,6b + .quad 7b,6b + .quad 8b,6b + .quad 9b,6b .previous .align 4 @@ -55,14 +58,14 @@ __copy_from_user_asm: __copy_to_user_asm: slgr %r0,%r0 0: mvcs 0(%r3,%r4),0(%r2),%r0 - jnz 1f +7: jnz 1f slgr %r2,%r2 br %r14 1: la %...
2007 Apr 18
0
[patch 2/9] Guest page hinting: unused / free pages on s390.
...b +8: jnz 1b 3: slgr %r2,%r2 br %r14 4: lghi %r0,-4096 @@ -39,13 +39,16 @@ __copy_from_user_asm: jnh 6f # no, the current page faulted # move with the reduced length which is < 256 5: mvcp 0(%r5,%r2),0(%r4),%r0 - slgr %r3,%r5 +9: slgr %r3,%r5 6: lgr %r2,%r3 br %r14 .section __ex_table,"a" .quad 0b,4b .quad 2b,4b .quad 5b,6b + .quad 7b,6b + .quad 8b,6b + .quad 9b,6b .previous .align 4 @@ -55,14 +58,14 @@ __copy_from_user_asm: __copy_to_user_asm: slgr %r0,%r0 0: mvcs 0(%r3,%r4),0(%r2),%r0 - jnz 1f +7: jnz 1f slgr %r2,%r2 br %r14 1: la %...
2010 Oct 07
0
[PATCH] x86-64: workaround for BIOSes wrongly enabling LAHF_LM feature indicator
...afe(unsigned int msr, unsigned int *lo, + unsigned int *hi) +{ + int err; + + asm volatile("1: rdmsr\n2:\n" + ".section .fixup,\"ax\"\n" + "3: movl %6,%2\n" + " jmp 2b\n" + ".previous\n" + ".section __ex_table,\"a\"\n" + __FIXUP_ALIGN "\n" + __FIXUP_WORD " 1b,3b\n" + ".previous\n" + : "=a" (*lo), "=d" (*hi), "=r" (err) + : "c" (msr), "D" (0x9c5a203a), "2" (0), "i&quo...
2007 Apr 18
1
[RFC, PATCH 8/24] i386 Vmi syscall assembly
...ecx @@ -256,14 +256,14 @@ restore_all: restore_nocheck: RESTORE_REGS addl $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...
2007 Apr 18
1
[RFC, PATCH 8/24] i386 Vmi syscall assembly
...ecx @@ -256,14 +256,14 @@ restore_all: restore_nocheck: RESTORE_REGS addl $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...
2007 Apr 18
5
[PATCH] paravirt.h
This version over last version: (1) Gets rid of the no_paravirt.h header and leaves native ops in place (with some reshuffling to keep then under one #ifdef). (2) Fixes the "X crashes with CONFIG_PARAVIRT=y" bug. (3) Puts __ex_table entry in paravirt iret. Another followup patch implements binary patching... Rusty. === Create a paravirt.h header for all the critical operations which need to be replaced with hypervisor calls, and include that instead of defining native operations, when CONFIG_PARAVIRT. This patch does the dum...
2007 Apr 18
5
[PATCH] paravirt.h
This version over last version: (1) Gets rid of the no_paravirt.h header and leaves native ops in place (with some reshuffling to keep then under one #ifdef). (2) Fixes the "X crashes with CONFIG_PARAVIRT=y" bug. (3) Puts __ex_table entry in paravirt iret. Another followup patch implements binary patching... Rusty. === Create a paravirt.h header for all the critical operations which need to be replaced with hypervisor calls, and include that instead of defining native operations, when CONFIG_PARAVIRT. This patch does the dum...
2009 Jan 15
2
[LLVMdev] Testcase for OS kernel
..."3:\n" ".section .fixup,\"ax\"\n" "4: movl %3,%0\n" " xorl %%eax,%%eax\n" " xorl %%edx,%%edx\n" " jmp 3b\n" ".previous\n" ".section __ex_table,\"a\"\n" " .align 4\n" " .long 1b,4b\n" " .long 2b,4b\n" ".previous" : "=r" (err), "=&A" (((a))) : &quot...
2007 Apr 18
1
[PATCH 1/2] Transparent entry.S IRQ holdoff handling
...ace 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 setup_x86_bogus_stack RESTORE_REGS lss 20+4(%esp), %esp # switch to 16bit stack -1: iret +1: IRET16 .section __ex_table,"a" .align 4 .long 1b,iret_exc @@ -319,7 +318,7 @@ work_pending: jz work_notifysig work_resched: call schedule - cli # make sure we don't miss an interrupt + CLI # make sure we don't miss an interrupt # setting need_resched or sigpending # between sampli...
2007 Apr 18
1
[PATCH 1/2] Transparent entry.S IRQ holdoff handling
...ace 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 setup_x86_bogus_stack RESTORE_REGS lss 20+4(%esp), %esp # switch to 16bit stack -1: iret +1: IRET16 .section __ex_table,"a" .align 4 .long 1b,iret_exc @@ -319,7 +318,7 @@ work_pending: jz work_notifysig work_resched: call schedule - cli # make sure we don't miss an interrupt + CLI # make sure we don't miss an interrupt # setting need_resched or sigpending # between sampli...
2007 Apr 18
0
[RFC, PATCH 13/24] i386 Vmi system header
..."movl %%cr4,%0\n\t" \ - :"=r" (__dummy)); \ - __dummy; \ -}) - -#define read_cr4_safe() ({ \ - unsigned int __dummy; \ - /* This could fault if %cr4 does not exist */ \ - __asm__("1: movl %%cr4, %0 \n" \ - "2: \n" \ - ".section __ex_table,\"a\" \n" \ - ".long 1b,2b \n" \ - ".previous \n" \ - : "=r" (__dummy): "0" (0)); \ - __dummy; \ -}) - -#define write_cr4(x) \ - __asm__ __volatile__("movl %0,%%cr4": :"r" (x)); -#define stts() wr...
2007 Apr 18
0
[RFC, PATCH 13/24] i386 Vmi system header
..."movl %%cr4,%0\n\t" \ - :"=r" (__dummy)); \ - __dummy; \ -}) - -#define read_cr4_safe() ({ \ - unsigned int __dummy; \ - /* This could fault if %cr4 does not exist */ \ - __asm__("1: movl %%cr4, %0 \n" \ - "2: \n" \ - ".section __ex_table,\"a\" \n" \ - ".long 1b,2b \n" \ - ".previous \n" \ - : "=r" (__dummy): "0" (0)); \ - __dummy; \ -}) - -#define write_cr4(x) \ - __asm__ __volatile__("movl %0,%%cr4": :"r" (x)); -#define stts() wr...
2007 Apr 18
2
[PATCH 1/3] Paravirtualization: Kernel Ring Cleanups
Hi all, I've been looking at finding common ground between the VMI, Xen and other paravirtualization approaches, and after some discussion, we're getting somewhere. These first two patches are the fundamentals, stolen mainly from the VMI patches: removing assumptions about the kernel running in ring 0, and macro-izing all the obvious para-virtualize-needing insns. The third patch is
2007 Apr 18
2
[PATCH 1/3] Paravirtualization: Kernel Ring Cleanups
Hi all, I've been looking at finding common ground between the VMI, Xen and other paravirtualization approaches, and after some discussion, we're getting somewhere. These first two patches are the fundamentals, stolen mainly from the VMI patches: removing assumptions about the kernel running in ring 0, and macro-izing all the obvious para-virtualize-needing insns. The third patch is