← Back to team overview

kernel-packages team mailing list archive

[Bug 1499089] Re: Please enable kconfig X86_LEGACY_VM86 for i386

 

We use the vm86() system call extensively with our applications,
primarily for performance reasons with DOS binaries that cannot be
changed.

Switching to CPU emulation is not possible as the applications run
considerably slower than if using the hardware features of the real CPU.
For this very same reason we run only 32 bit x86 on the servers to
support this single system call. Of course the answer could be proposed
that we compile our own kernels with this feature enabled, but this is
in a production environment running stable existing software for
business and not some desktop PC to just run DOS games, so we really
need kernels with a proper provenance.

Again for performance reasons we track the very latest hardware and
chipsets, so it means we usually have to use the hardware enablement
stack for LTS 14.04, currently this is based on kernel 3.19 and runs
vm86() syscalls just fine out of the box, but soon the Wily based kernel
4.2 will be used for that. Kernel 4.2 in Wily has the vm86() syscall
compile time disabled at present.

If you could change the Kconfig to allow vm86() to be runtime enabled that would be the ideal solution and remove the regression. I suspect that you might want to backport this simple patch to set the runtime default to disabled
https://github.com/torvalds/linux/commit/76fc5e7b2355af167dea1a32e93c57fc37900a5b

I can only hope you understand the importance of this to our business,
if this isn't fixed we will be unable to update our servers and also
that they wouldn't be viable without the full x86 support for the vm86()
syscall.

-- 
You received this bug notification because you are a member of Kernel
Packages, which is subscribed to linux in Ubuntu.
https://bugs.launchpad.net/bugs/1499089

Title:
  Please enable kconfig X86_LEGACY_VM86 for i386

Status in linux package in Ubuntu:
  Triaged

Bug description:
  In order for dosemu to reach maximum performance (a > 10x speedup) please enable kconfig X86_LEGACY_VM86 in the kernel. As of this commit http://www.spinics.net/lists/linux-tip-commits/msg30360.html
  the overzealous kconfig message that seemed to suggest that the vm86() syscall was a security hazard in itself has been revised to reflect reality. Also please note that even if this kconfig option is enabled the runtime default is still off as vm86 is only actually enabled if the sysctl vm.mmap_min_addr is set to 0. That said, allowing  vm.mmap_min_addr=0  is a known security risk and enabling the vm86() syscall to operate additionally would add little value to any potential attacker.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1499089/+subscriptions


References