Print this page
11787 Kernel needs to be built with retpolines
11788 Kernel needs to generally use RSB stuffing
Reviewed by: Jerry Jelinek <jerry.jelinek@joyent.com>
Reviewed by: John Levon <john.levon@joyent.com>

*** 306,316 **** movq %rbp, %rdi call av_dispatch_nmivect INTR_POP ! call *x86_md_clear jmp tr_iret_auto /*NOTREACHED*/ SET_SIZE(nmiint) #elif defined(__i386) --- 306,316 ---- movq %rbp, %rdi call av_dispatch_nmivect INTR_POP ! call x86_md_clear jmp tr_iret_auto /*NOTREACHED*/ SET_SIZE(nmiint) #elif defined(__i386)
*** 1024,1034 **** cmpl $T_LASTFAST, %eax ja 1f orl %eax, %eax /* (zero extend top 32-bits) */ leaq fasttable(%rip), %r11 leaq (%r11, %rax, CLONGSIZE), %r11 ! jmp *(%r11) 1: /* * Fast syscall number was illegal. Make it look * as if the INT failed. Modify %rip to point before the * INT, push the expected error code and fake a GP fault. --- 1024,1035 ---- cmpl $T_LASTFAST, %eax ja 1f orl %eax, %eax /* (zero extend top 32-bits) */ leaq fasttable(%rip), %r11 leaq (%r11, %rax, CLONGSIZE), %r11 ! movq (%r11), %r11 ! INDIRECT_JMP_REG(r11) 1: /* * Fast syscall number was illegal. Make it look * as if the INT failed. Modify %rip to point before the * INT, push the expected error code and fake a GP fault.
*** 1084,1094 **** * XXX a constant would be nicer. */ ENTRY_NP(fast_null) XPV_TRAP_POP orq $PS_C, 24(%rsp) /* set carry bit in user flags */ ! call *x86_md_clear jmp tr_iret_auto /*NOTREACHED*/ SET_SIZE(fast_null) #elif defined(__i386) --- 1085,1095 ---- * XXX a constant would be nicer. */ ENTRY_NP(fast_null) XPV_TRAP_POP orq $PS_C, 24(%rsp) /* set carry bit in user flags */ ! call x86_md_clear jmp tr_iret_auto /*NOTREACHED*/ SET_SIZE(fast_null) #elif defined(__i386)