On 2012-02-27 10:51, Daniel P. Berrange wrote:
I'm seeing current QEMU GIT fail to boot MS-Dos 6.22 with the following crash:
# qemu-system-x86_64 -fda ~/MS-DOS\ 6.22.img -m 1 -curses iPXE v1.0.0-591-g7aee315 iPXE (http://ipxe.org) 00:03.0 C900 PCI2.10 PnP PMM+00000000+00000000 C900
Booting from Floppy..
. qemu: fatal: Trying to execute code outside RAM or ROM at 0x00000001000effff
EAX=ffffffff EBX=ffffffff ECX=0000c934 EDX=00000068 ESI=00006801 EDI=00000000 EBP=0000002b ESP=0000fff5 EIP=ffffffff EFL=00000002 [-------] CPL=0 II=0 A20=1 SMM=0 HLT=0 ES =0040 00000400 0000ffff 00009300 CS =f000 000f0000 0000ffff 00009b00 SS =9ec4 0009ec40 0000ffff 00009300 DS =9ec4 0009ec40 0000ffff 00009300 FS =0000 00000000 0000ffff 00009300 GS =0000 00000000 0000ffff 00009300 LDT=0000 00000000 0000ffff 00008200 TR =0000 00000000 0000ffff 00008b00 GDT= 000fcd78 00000037 IDT= 00000000 000003ff CR0=00000010 CR2=00000000 CR3=00000000 CR4=00000000 DR0=0000000000000000 DR1=0000000000000000 DR2=0000000000000000 DR3=0000000000000000 DR6=00000000ffff0ff0 DR7=0000000000000400 CCS=000000d0 CCD=00000068 CCO=SARL EFER=0000000000000000 FCW=037f FSW=0000 [ST=0] FTW=00 MXCSR=00001f80 FPR0=0000000000000000 0000 FPR1=0000000000000000 0000 FPR2=0000000000000000 0000 FPR3=0000000000000000 0000 FPR4=0000000000000000 0000 FPR5=0000000000000000 0000 FPR6=0000000000000000 0000 FPR7=0000000000000000 0000 XMM00=00000000000000000000000000000000 XMM01=00000000000000000000000000000000 XMM02=00000000000000000000000000000000 XMM03=00000000000000000000000000000000 XMM04=00000000000000000000000000000000 XMM05=00000000000000000000000000000000 XMM06=00000000000000000000000000000000 XMM07=00000000000000000000000000000000 Aborted
Git bisect blames this
commit 41bd360325168b3c1db78eb7311420a1607d521f Author: Jan Kiszka jan.kiszka@siemens.com Date: Sun Jan 15 17:48:25 2012 +0100
seabios: Update to release 1.6.3.1 User visible changes in seabios: - Probe HPET existence (fix for -no-hpet) - Probe PCI existence (fix for -machine isapc) - usb: fix boot paths Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
I tried to bisect Seabios, but every revision in Seabios upstream works fine.
Then I noticed, that if I rebuild the BIOS, from the exact same revision 1.6.3.1 revision that is committed in 'seabios' submodule in QEMU, then it works fine. So AFAICT, it is not the Seabios source code at fault, but rather the binary build we have commited to GIT. Should/can we rebuild the bios.bin in GIT ?
Probably not without understanding what causes this strange inconsistency. If Seabios builds without errors and then later on fails, this is also a bug.
Kevin, what information do you need to assess my tool chain?
Jan