I386 BIOS and cpu fixes / cleanups
cover I386 BIOS and cpu fixes / cleanups
The harmless portion of my current i386 cleanups, including one very nice bugfix to protect the kernel from rampant trampling by the PnP BIOS. The problem was the PnP transfer segments were protected in page increments, not byte increments, so a broken BIOS could overstep the bounds the PnP code was trying to enforce. Turns out I had such a broken BIOS, and discovered a common PnP bug is to use word access (2 bytes) to get and set device IDs, which are supposed to be 1-byte.
Rather than let the BIOS trample memory, I added a workaround to copy data to and from a temporary value, which allows the BIOS to smash the high byte safely.
The rest of these are (hopefully) obviously correct, nice transforms or removal of dead code.
Zachary Amsden <[email protected]>