From mboxrd@z Thu Jan 1 00:00:00 1970 From: Stas Sergeev Subject: Re: Ubuntu 16.04 on i386 has VM86 disabled again Date: Tue, 26 Apr 2016 13:43:33 +0300 Message-ID: <571F4655.4080000@list.ru> References: <20160425131651.d76bec4ef1f6394e2452d23b@spheresystems.co.uk> <571E12FD.8070607@list.ru> <571F3237.2080201@sat.dundee.ac.uk> Mime-Version: 1.0 Content-Transfer-Encoding: QUOTED-PRINTABLE Return-path: DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=list.ru; s=mail; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:MIME-Version:Date:Message-ID:From:References:To:Subject; bh=9djw4eNUv0oJRzBF2qqaizKi8sOamy7rVlx8LXxZN/g=; b=JRMQATUNFNpXcfzR764arUDWH5hXHbNpWJdst/arlizgta7mphAIJpNL45mIO0f5IfF66QClIbEbX/lqFLxSo2E5F75pTIAQnmBpKk5fZKsxs3FT2Fe2J2NLBQEmva6NU2RPm5tP7LQgOI61A6DY1j945PoL/OOT35shmE1ZqNU=; In-Reply-To: <571F3237.2080201@sat.dundee.ac.uk> Sender: linux-msdos-owner@vger.kernel.org List-ID: Content-Type: text/plain; charset="utf-8"; format="flowed" To: Paul Crawford , Andrew Bird , linux-msdos@vger.kernel.org 26.04.2016 12:17, Paul Crawford =D0=BF=D0=B8=D1=88=D0=B5=D1=82: > On 25/04/16 13:52, Stas Sergeev wrote: >> That was the "right" thing to do. Or at least justified and discusse= d. >> 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 wit= h=20 > 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=3Dlinux-kernel&m=3D143654248415764 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 somewh= ere, a lot of time-wasting. :) > I was under the impression that for 32-bit CPU operation it was simpl= y=20 > a call to the corresponding x86 instructions, so don't see what would= =20 > be "wrong"=20 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=20 > (much like anything else really) hence the idea of having it=20 > configurable at run-time so it defaults to being off but is only a=20 > (root) text edit away from being enabled for us who want it for odd=20 > 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