Re: [v6 PATCH 19/21] x86/traps: Fixup general protection faults caused by UMIP

Andy Lutomirski <[email protected]> Wed, 8 Mar 2017 07:54:51 -0800
Newsgroups org.kernel.vger.linux-msdos,org.kernel.vger.linux-kernel
Message-ID <CALCETrURiXV6hE+_TjGU_vRZM=dzt1_K7_FgXv+58sTUQ5rNCA@mail.gmail.com>
On Tue, Mar 7, 2017 at 4:32 PM, Ricardo Neri
<[email protected]> wrote:
> If the User-Mode Instruction Prevention CPU feature is available and
> enabled, a general protection fault will be issued if the instructions
> sgdt, sldt, sidt, str or smsw are executed from user-mode context
> (CPL > 0). If the fault was caused by any of the instructions protected
> by UMIP, fixup_umip_exception will emulate dummy results for these
> instructions. If emulation is successful, the result is passed to the
> user space program and no SIGSEGV signal is emitted.
>
> Please note that fixup_umip_exception also caters for the case when
> the fault originated while running in virtual-8086 mode.

Reviewed-by: Andy Lutomirski <[email protected]>