Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-x86

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-x86:
x86-boot: don't request VBE2 information
x86: re-add reboot fixups
x86: fix typo in step.c
x86: fix merge mistake in i387.c
x86: clear DF before calling signal handler

+15 -18
+1 -8
arch/x86/boot/vesa.h
··· 26 26 far_ptr video_mode_ptr; /* 14 */ 27 27 u16 total_memory; /* 18 */ 28 28 29 - u16 oem_software_rev; /* 20 */ 30 - far_ptr oem_vendor_name_ptr; /* 22 */ 31 - far_ptr oem_product_name_ptr; /* 26 */ 32 - far_ptr oem_product_rev_ptr; /* 30 */ 33 - 34 - u8 reserved[222]; /* 34 */ 35 - u8 oem_data[256]; /* 256 */ 29 + u8 reserved[236]; /* 20 */ 36 30 } __attribute__ ((packed)); 37 31 38 32 #define VESA_MAGIC ('V' + ('E' << 8) + ('S' << 16) + ('A' << 24)) 39 - #define VBE2_MAGIC ('V' + ('B' << 8) + ('E' << 16) + ('2' << 24)) 40 33 41 34 struct vesa_mode_info { 42 35 u16 mode_attr; /* 0 */
-2
arch/x86/boot/video-vesa.c
··· 37 37 38 38 video_vesa.modes = GET_HEAP(struct mode_info, 0); 39 39 40 - vginfo.signature = VBE2_MAGIC; 41 - 42 40 ax = 0x4f00; 43 41 di = (size_t)&vginfo; 44 42 asm(INT10
+2 -2
arch/x86/ia32/ia32_signal.c
··· 500 500 regs->ss = __USER32_DS; 501 501 502 502 set_fs(USER_DS); 503 - regs->flags &= ~X86_EFLAGS_TF; 503 + regs->flags &= ~(X86_EFLAGS_TF | X86_EFLAGS_DF); 504 504 if (test_thread_flag(TIF_SINGLESTEP)) 505 505 ptrace_notify(SIGTRAP); 506 506 ··· 600 600 regs->ss = __USER32_DS; 601 601 602 602 set_fs(USER_DS); 603 - regs->flags &= ~X86_EFLAGS_TF; 603 + regs->flags &= ~(X86_EFLAGS_TF | X86_EFLAGS_DF); 604 604 if (test_thread_flag(TIF_SINGLESTEP)) 605 605 ptrace_notify(SIGTRAP); 606 606
+1 -1
arch/x86/kernel/i387.c
··· 261 261 } 262 262 #else 263 263 env->fip = fxsave->fip; 264 - env->fcs = fxsave->fcs; 264 + env->fcs = (u16) fxsave->fcs | ((u32) fxsave->fop << 16); 265 265 env->foo = fxsave->foo; 266 266 env->fos = fxsave->fos; 267 267 #endif
+6
arch/x86/kernel/reboot.c
··· 326 326 } 327 327 } 328 328 329 + void __attribute__((weak)) mach_reboot_fixups(void) 330 + { 331 + } 332 + 329 333 static void native_machine_emergency_restart(void) 330 334 { 331 335 int i; ··· 341 337 /* Could also try the reset bit in the Hammer NB */ 342 338 switch (reboot_type) { 343 339 case BOOT_KBD: 340 + mach_reboot_fixups(); /* for board specific fixups */ 341 + 344 342 for (i = 0; i < 10; i++) { 345 343 kb_wait(); 346 344 udelay(50);
+2 -2
arch/x86/kernel/signal_32.c
··· 407 407 * The tracer may want to single-step inside the 408 408 * handler too. 409 409 */ 410 - regs->flags &= ~TF_MASK; 410 + regs->flags &= ~(TF_MASK | X86_EFLAGS_DF); 411 411 if (test_thread_flag(TIF_SINGLESTEP)) 412 412 ptrace_notify(SIGTRAP); 413 413 ··· 500 500 * The tracer may want to single-step inside the 501 501 * handler too. 502 502 */ 503 - regs->flags &= ~TF_MASK; 503 + regs->flags &= ~(TF_MASK | X86_EFLAGS_DF); 504 504 if (test_thread_flag(TIF_SINGLESTEP)) 505 505 ptrace_notify(SIGTRAP); 506 506
+1 -1
arch/x86/kernel/signal_64.c
··· 295 295 see include/asm-x86_64/uaccess.h for details. */ 296 296 set_fs(USER_DS); 297 297 298 - regs->flags &= ~X86_EFLAGS_TF; 298 + regs->flags &= ~(X86_EFLAGS_TF | X86_EFLAGS_DF); 299 299 if (test_thread_flag(TIF_SINGLESTEP)) 300 300 ptrace_notify(SIGTRAP); 301 301 #ifdef DEBUG_SIG
+2 -2
arch/x86/kernel/step.c
··· 166 166 child->thread.debugctlmsr | DEBUGCTLMSR_BTF); 167 167 } else { 168 168 write_debugctlmsr(child, 169 - child->thread.debugctlmsr & ~TIF_DEBUGCTLMSR); 169 + child->thread.debugctlmsr & ~DEBUGCTLMSR_BTF); 170 170 171 171 if (!child->thread.debugctlmsr) 172 172 clear_tsk_thread_flag(child, TIF_DEBUGCTLMSR); ··· 189 189 * Make sure block stepping (BTF) is disabled. 190 190 */ 191 191 write_debugctlmsr(child, 192 - child->thread.debugctlmsr & ~TIF_DEBUGCTLMSR); 192 + child->thread.debugctlmsr & ~DEBUGCTLMSR_BTF); 193 193 194 194 if (!child->thread.debugctlmsr) 195 195 clear_tsk_thread_flag(child, TIF_DEBUGCTLMSR);