From: Stas Sergeev <stsp@list.ru>
To: Paul Crawford <psc@sat.dundee.ac.uk>,
Andrew Bird <ajb@spheresystems.co.uk>,
linux-msdos@vger.kernel.org
Subject: Re: Ubuntu 16.04 on i386 has VM86 disabled again
Date: Tue, 26 Apr 2016 13:43:33 +0300 [thread overview]
Message-ID: <571F4655.4080000@list.ru> (raw)
In-Reply-To: <571F3237.2080201@sat.dundee.ac.uk>
26.04.2016 12:17, Paul Crawford пишет:
> On 25/04/16 13:52, Stas Sergeev wrote:
>> That was the "right" thing to do. Or at least justified and discussed.
>> If we want vm86(), we need to re-implement it properly.
>> I have a word from top linux devs (including Linus himself)
>> that properly implemented vm86() will stay enabled.
>
> This may seem like a strange question, but what is actually wrong with
> the current/past vm86() support?
The problems started to happen when vm86() was completely
broken for too long and no one have complained. So the kernel
devs decided to simply disable it, instead of fixing, assuming no
one uses it:
http://marc.info/?l=linux-kernel&m=143654248415764
Only then Andrew Bird have noticed that and raised
an issue. After a lot of pestering, I convinced them to actually fix it:
https://lkml.org/lkml/2015/10/31/7
but, since I am using the 64bit environment, I had the hard times
to even test the fix. So they left it disabled until someone can
provide a very simple, easy to audit implementation. This is not
difficult at all, BUT, this will require installing the 32bit OS somewhere,
a lot of time-wasting. :)
> I was under the impression that for 32-bit CPU operation it was simply
> a call to the corresponding x86 instructions, so don't see what would
> be "wrong"
You can see its sources and judge for yourself.
There are few problems. Firstly, it emulates VME in software
because of some horrible hacks that former dosemu developers
have pushed into kernel (grep for BIOSSEG in vm86_32.c).
Secondly it implements the horrible and completely unrelated
interfaces, also pushed by some dosemu devs in the darkest
past (VM86_REQUEST_IRQ and friends).
So while I was fighting the decision of disabling it, I'd be doing
the same thing if I were them. :)
> with that beyond the obvious aspect that it can be abused by malware
> (much like anything else really) hence the idea of having it
> configurable at run-time so it defaults to being off but is only a
> (root) text edit away from being enabled for us who want it for odd
> cases like dosemu.
If it is properly implemented, then yes. And I have that "yes"
from Linus and Ingo personally.
But the current implementation does not deserve even the
run-time disabling. It should be completely compiled out,
unfortunately.
--
To unsubscribe from this list: send the line "unsubscribe linux-msdos" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
prev parent reply other threads:[~2016-04-26 10:43 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-04-25 12:16 Ubuntu 16.04 on i386 has VM86 disabled again Andrew Bird
2016-04-25 12:52 ` Stas Sergeev
2016-04-26 9:17 ` Paul Crawford
2016-04-26 10:09 ` Andrew Bird
2016-04-26 10:59 ` Stas Sergeev
2016-06-11 8:40 ` Andrew Bird
2016-04-26 10:43 ` Stas Sergeev [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=571F4655.4080000@list.ru \
--to=stsp@list.ru \
--cc=ajb@spheresystems.co.uk \
--cc=linux-msdos@vger.kernel.org \
--cc=psc@sat.dundee.ac.uk \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox