qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PATCH] write option roms in pc-bios/


From: Paolo Bonzini
Subject: [Qemu-devel] [PATCH] write option roms in pc-bios/
Date: Thu, 24 Dec 2009 15:27:41 +0100

>> The gdt address calculation in linuxboot.bin is broken in two ways: first
>> it loads %cs into %eax, but that instruction leaves the high bits of %eax
>> undefined and we did not clear them. Secondly, we completely ignore the
>> incorrect %eax, and use the undefined %ebx instead.
>>
>> With these issues fixed, linuxboot works again.
>
> Wow, I wonder how it worked for me...

Got it.  The option roms are built in pc-bios/optionrom, but QEMU loads
the ones in pc-bios.  So actually I was always testing Alexander's code
even though I had done a "make -B" to feel safer. :-(

Signed-off-by: Paolo Bonzini <address@hidden>
---
 pc-bios/optionrom/Makefile |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/pc-bios/optionrom/Makefile b/pc-bios/optionrom/Makefile
index 54db882..bf5a2f3 100644
--- a/pc-bios/optionrom/Makefile
+++ b/pc-bios/optionrom/Makefile
@@ -13,7 +13,7 @@ CFLAGS += -I$(SRC_PATH)
 CFLAGS += $(call cc-option, $(CFLAGS), -fno-stack-protector)
 QEMU_CFLAGS = $(CFLAGS)
 
-build-all: multiboot.bin linuxboot.bin
+build-all: ../multiboot.bin ../linuxboot.bin
 
 %.img: %.o
        $(call quiet-command,$(LD) -Ttext 0 -e _start -s -o $@ $<,"  Building 
$(TARGET_DIR)$@")
@@ -21,7 +21,7 @@ build-all: multiboot.bin linuxboot.bin
 %.raw: %.img
        $(call quiet-command,$(OBJCOPY) -O binary -j .text $< $@,"  Building 
$(TARGET_DIR)$@")
 
-%.bin: %.raw
+../%.bin: %.raw
        $(call quiet-command,$(SHELL) $(SRC_PATH)/pc-bios/optionrom/signrom.sh 
$< $@,"  Signing $(TARGET_DIR)$@")
 
 clean:
-- 
1.6.5.2





reply via email to

[Prev in Thread] Current Thread [Next in Thread]