Re: [v6 PATCH 00/21] x86: Enable User-Mode Instruction Prevention

From: Stas Sergeev
Date: Tue Apr 04 2017 - 06:00:07 EST


01.04.2017 20:49, H. Peter Anvin ÐÐÑÐÑ:
<x86@xxxxxxxxxx>,linux-msdos@xxxxxxxxxxxxxxx,wine-devel@xxxxxxxxxx
From: hpa@xxxxxxxxx
Message-ID: <3FD12652-AA83-4D73-9914-BBA089E58FFA@xxxxxxxxx>

On April 1, 2017 6:08:43 AM PDT, Stas Sergeev <stsp@xxxxxxx> wrote:
30.03.2017 08:14, Ricardo Neri ÐÐÑÐÑ:
You know the wine's
requirements now - they are very small. And
dosemu doesn't need anything at all but smsw.
And even smsw is very rare.
But emulation is still needed for SMSW, right?
Likely so.
If you want, I can enable the logging of this command
and see if it is used by some of the DOS programs I have.
It would be great if you could do that, if you don't mind.
OK, scheduled to the week-end.
I'll let you know.
Thanks!
OK, done the testing.
It appears smsw is used in v86 by windows-3.1 and dos4gw
at the very least, and these are the "major" apps. So doing
without a fixup in v86 will not go unnoticed. Unfortunately
this also means that KVM-vm86 should be properly tested.
I have also found a weird program that does SGDT under
v86. This causes "ERROR: SGDT not implemented" under
dosemu, but the prog still works fine as it obviously does
not care about the results. This app can easily be broken
of course, if that makes any sense (likely not).
Using SMSW to detect v86 mode is relatively common. pushf hides the VM flag, but SMSW is available, providing the v86 virtualization hole.
Perhaps sgdt in v86 is used (very rare) for the same purpose then.