Re: [PATCH 0/6] i386 virtualization patches, Set 3

From: Brian Gerst
Date: Mon Aug 15 2005 - 22:07:51 EST


zach@xxxxxxxxxx wrote:
This round attempts to conclude all of the LDT related cleanup with some
finally nice looking LDT code, fixes for the UML build, a bugfix for
really rather nasty kprobes problems, and the basic framework for an LDT
test suite. It is really rather unfortunate that this code is so
difficult to test, even with DOSemu and Wine, there are still very nasty
corner cases here - anyone want an iret to 16-bit stack test?.

I was going to attempt to clean up the math-emu code to make it use the
nice new segment and descriptor table accessors, but it quickly became
apparent that this would be a long, tedious, error prone process that
would eventually result in the death of a large section of my brain.
In addition, it is not very fun to test this on the actual hardware it
is designed to run on (although I did manage to track down a 386 with
detachable i387 coprocessor, the owner is not sure it still boots).
Someday it would be nice to have an audit of this code; it appears to
be riddled with bugs relating to segmentation, for example it assumes
LDT segments on overrides, does not use the mm->context semaphore to
protect LDT access, and generally looks scarily out of date in both
function and appearance.

If you really want to test the math emu code, you can hack check_x87 in head.S to always leave the fpu disabled. Then you can test it on any cpu, not just a 386.

--
Brian Gerst
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/