[prefix] Set the "size" bit in the GDT entry for the flat data segment

The "size" bit (aka the D/B) bit should (as far as I can tell) be
irrelevant for accesses to a non-code, non-stack, expand-upwards
segment.  However, VirtualBox fails on some accesses via this segment
if this bit is not set.

This change allows iPXE to boot under VirtualBox without having to
disable VT-x/AMD-V support.

Signed-off-by: Michael Brown <mcb30@ipxe.org>
pull/1/head
Michael Brown 2011-03-01 16:03:44 +00:00
parent 17ef28414f
commit 90563f69be
1 changed files with 1 additions and 1 deletions

View File

@ -332,7 +332,7 @@ process_bytes:
/* Construct GDT on stack (since .prefix may not be writable) */
.equ PM_DS, 0x18 /* Flat data segment */
pushl $0x008f9300
pushl $0x00cf9300
pushl $0x0000ffff
.equ PM_SS, 0x10 /* Stack segment based at %ss:0000 */
pushl $0x008f0930