[LinuxBIOS] Running X Server on QEMU

Alan Carvalho de Assis acassis at gmail.com
Thu Aug 2 00:45:28 CEST 2007

Hi Guys,
I am trying to place kdrive to run on QEMU but I'm facing some problems.

First I applied the patch on QEMU to accept bios.bin with more than
256KB, I update this info on wiki page:

Then compiled a minimal linux kernel with rootfs inside and tested it in qemu:

qemu -kernel tinyxmatchbox.img -hda /dev/null

Note: tinyxmatchbox.img is just one bzImage with rootfs inside, then I
don't need -hda pointing the any disc.

It run fine like in my video in youtube.
You can test it just downloading:
http://lbdistro.sourceforge.net/files/tinyxmatchbox.img and executing
the above command.

Then I converted this image to ELF:
mkelfImage --append="console=tty0" tinyxmatchbox.img linux.elf

Then compiled LinuxBIOSv3 using this linux.elf. I need active the LZMA
compression because linux.elf size is about 1.99MB.

Everything goes fine, but when I try to execute qemu using the
bios.bin (the file vgabios-cirrus.bin is at same directory as well) I
receive this error:

$ qemu -L ~ -hda /dev/null
qemu: fatal: Trying to execute code outside RAM or ROM at 0x31e1b77c

EAX=31e1b77c EBX=31c3b000 ECX=00000000 EDX=00000000
ESI=00090000 EDI=31c3b000 EBP=00100000 ESP=00090040
EIP=31e1b77c EFL=00000002 [-------] CPL=0 II=0 A20=1 SMM=0 HLT=0
ES =0018 00000000 ffffffff 00cf9300
CS =0010 00000000 ffffffff 00cf9a00
SS =0018 00000000 ffffffff 00cf9300
DS =0018 00000000 ffffffff 00cf9300
FS =0018 00000000 ffffffff 00cf9300
GS =0018 00000000 ffffffff 00cf9300
LDT=0000 00000000 0000ffff 00008000
TR =0000 00000000 0000ffff 00008000
GDT=     00091000 0000006f
IDT=     00000000 00000000
CR0=00000011 CR2=00000000 CR3=00000000 CR4=00000000
CCS=00000004 CCD=31c3b000 CCO=EFLAGS
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 (core dumped)

I searched about this error message. This is a generic error, but I
can't found any solution. Some suggestion?



More information about the coreboot mailing list