Skip to content
  • Brian Gerst's avatar
    x86/vm86: Use the normal pt_regs area for vm86 · 5ed92a8a
    Brian Gerst authored
    
    
    Change to use the normal pt_regs area to enter and exit vm86
    mode.  This is done by increasing the padding at the top of the
    stack to make room for the extra vm86 segment slots in the IRET
    frame.  It then saves the 32-bit regs in the off-stack vm86
    data, and copies in the vm86 regs.  Exiting back to 32-bit mode
    does the reverse.  This allows removing the hacks to jump
    directly into the exit asm code due to having to change the
    stack pointer.  Returning normally from the vm86 syscall and the
    exception handlers allows things like ptrace and auditing to work properly.
    
    Signed-off-by: default avatarBrian Gerst <brgerst@gmail.com>
    Acked-by: default avatarAndy Lutomirski <luto@kernel.org>
    Cc: Andy Lutomirski <luto@amacapital.net>
    Cc: Borislav Petkov <bp@alien8.de>
    Cc: Denys Vlasenko <dvlasenk@redhat.com>
    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>
    Link: http://lkml.kernel.org/r/1438148483-11932-5-git-send-email-brgerst@gmail.com
    
    
    Signed-off-by: default avatarIngo Molnar <mingo@kernel.org>
    5ed92a8a