Ticket #3720 (new defect)
Recompiler doesn't check selector limits
|Reported by:||adrianmay||Owned by:|
|Version:||VirtualBox 2.0.4||Keywords:||GP fault, GDT, segment overrun|
Demo code at github.com/adrianmay/digilife master branch tag "vboxbug". Make it with 'make' and use zed.img as a boot floppy. On a real (single processor) PC this program reports a GP fault when main.c attempts to write to *0xffffffff although the data segment (GDT in bootsect.asm) is only 0xC0000 long. On VBox, the program sails on regardless. (There's no TSS and only a ring 0 task in this program.) I got similar effects with other peoples' OS tutorials. Code segments crash when expected.
- Summary changed from Allows overrun of data segment to Recompiler doesn't check selector limits