On Tue, 2010-07-27 at 20:23 +0200, Mark Kettenis wrote: > > Date: Tue, 27 Jul 2010 17:57:01 +0100 > > From: Matthew Garrett <m...@redhat.com> > > On Wed, Jul 14, 2010 at 04:15:56PM +0300, Tiago Vignatti wrote: > > > On Tue, Jul 13, 2010 at 11:32:54PM +0200, ext Adam Jackson wrote: > > > > vm86 has been defaulted off since 1.6, and is still a terrible idea to > > > > actually use. Time to say goodbye. > > > > > > My empirical evidences say that we can't do this. > > > > The vm86 code is guaranteed to fail in certain circumstances. The most > > obvious is anything where the BIOS tries to access address space above > > 3GB. We're better off killing it and figuring out where the bugs in > > x86emu are. > > How about fixing those bugs before killing it?
Some of them are... nontrivial. The two big ones I know of are that we don't really emulate unreal mode properly, and we don't even attempt to emulate MSRs. This tends not to matter except on IGP-ish machines, since you'll rarely do that kind of setup unless you _know_ what kind of processor you're attached to; but then, those are the sorts of machines people run vesa on... But I mean, unreal mode mostly doesn't work in vm86 either, and MSR setup is likely to have been changed by the OS to something the BIOS isn't expecting, so if/when it works at all with vm86 it's a bit playing with fire. I also believe that fixing unreal mode requires a modest amount of surgery to the int10 harness itself, which is currently subclassed two ways depending on whether you're doing vm86 or x86emu, which makes it much harder than it needs to be. Just to pick one example, go look how many _different_ real-to-virtual address translation macros there are. - ajax
signature.asc
Description: This is a digitally signed message part
_______________________________________________ xorg-devel@lists.x.org: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel