Re: [PATCH] x86/kconfig/32: Mark CONFIG_VM86 as BROKEN

From: Kees Cook
Date: Wed Jul 08 2015 - 14:49:10 EST


On Wed, Jul 8, 2015 at 10:55 AM, Linus Torvalds
<torvalds@xxxxxxxxxxxxxxxxxxxx> wrote:
> On Wed, Jul 8, 2015 at 10:49 AM, Andy Lutomirski <luto@xxxxxxxxxxxxxx> wrote:
>>
>> I don't know how to tell whether something is trying to use real mode,
>> but I can play this just fine in DOSEMU on my 64-bit laptop:
>
> So a 64-bit distro obviously will never have used vm86 mode - it
> doesn't work there. Never has. There's no sane way to get to vm86 mode
> from long mode, that's just how the 64-bit extensions worked.
>
> (64-bit hardware obviously does support vm86 mode, but you have to
> play games with mixing long mode and CPL0 32-bit protected mode to get
> there, and we never did that).
>
> It's the 32-bit distros I would worry about. The ones that may have
> well disabled emulation, because they have vm86 mode enabled.

Speaking as the dosemu maintainer in Debian and Ubuntu, I can confirm
what Andy mentioned: dosemu will kick over to emulation if SYS_vm86
and SYS_vm86old fail. The other area I remember that used vm86 mode
was non-KMS Xorg drivers and anything using svgalib that tried to do
video card BIOS initialization.

Also, Andy, I think you weren't looking at i386 builds of Ubuntu.
Current Ubuntu, and 12.04 ("Precise") LTS (supported until 2017), and
14.04 LTS (until 2019) releases all have CONFIG_VM86.

-Kees

--
Kees Cook
Chrome OS Security
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/