qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] qemu crashes and freezes on x86_64/amd64 host


From: Karl Magdsick
Subject: Re: [Qemu-devel] qemu crashes and freezes on x86_64/amd64 host
Date: Fri, 8 Oct 2004 20:22:25 -0400

What is your compiler target when creating the qemu executible?

My understanding is that almost all of the instructions in 64-bit mode
are reverse-compatible with 32-bit mode, but a few have changed
slightly.  If your qemu executible is compiled for 64-bit mode (and is
therefore being run in 64-bit usermode), but the jit is generating
32-bit code, this could be problematic for a small number of
instructions.  I have no direct knowledge of the differences between
the instruction encodings for 32-bit and 64-bit modes, just hearsay.

Just a guess.


-Karl


On Thu, 07 Oct 2004 20:54:06 +0200, Bob Deblier <address@hidden> wrote:
> Current CVS version, statically compiled, running on FC2 x86_64 (a.k.a.
> amd64)
> 
> Maybe these gdb sessions can help shed some light:
> 
> address@hidden qemu]$ gdb qemu
> GNU gdb Red Hat Linux (6.0post-0.20040223.19rh)
> Copyright 2004 Free Software Foundation, Inc.
> GDB is free software, covered by the GNU General Public License, and you
> are
> welcome to change it and/or distribute copies of it under certain
> conditions.
> Type "show copying" to see the conditions.
> There is absolutely no warranty for GDB.  Type "show warranty" for
> details.
> This GDB was configured as "x86_64-redhat-linux-gnu"...Using host
> libthread_db library "/lib64/tls/libthread_db.so.1".
> 
> (gdb) set args -cdrom /opt/iso/w2k.iso -boot d w2k.img
> (gdb) run
> Starting program: /usr/bin/qemu -cdrom /opt/iso/w2k.iso -boot d w2k.img
> 
> Program received signal SIGSEGV, Segmentation fault.
> tb_link_phys (tb=0xbd8dc8, phys_pc=33, phys_page2=426) at
> /home/bob/emulators/cvs/qemu/exec.c:842
> 842         tb->page_next[n] = p->first_tb;
> (gdb)
> 
> Another session crashes at the same location, with different values:
> 
> Program received signal SIGSEGV, Segmentation fault.
> tb_link_phys (tb=0xbd8cf8, phys_pc=33, phys_page2=426) at
> /home/bob/emulators/cvs/qemu/exec.c:842
> 842         tb->page_next[n] = p->first_tb;
> 
> Yet another possibility is that qemu apparently freezes; interrupting
> gdb then gives:
> 
> (gdb) run
> Starting program: /usr/bin/qemu -cdrom /opt/iso/w2k.iso -boot d w2k.img
> 
> Program received signal SIGINT, Interrupt.
> 0x000000000126cd4d in code_gen_buffer ()
> (gdb) where
> #0  0x000000000126cd4d in code_gen_buffer ()
> #1  0x0000000001adbd00 in ?? ()
> #2  0x0000000000446145 in cpu_x86_exec (env1=0xfd76) at
> /home/bob/emulators/cvs/qemu/cpu-exec.c:545
> #3  0x0000000000403294 in main_loop () at
> /home/bob/emulators/cvs/qemu/vl.c:2463
> #4  0x0000000000403fb3 in main (argc=64886, argv=0xc000) at
> /home/bob/emulators/cvs/qemu/vl.c:3392
> (gdb)
> 
> Any pointers welcome.
> 
> Sincerely,
> 
> Bob Deblier
> 
> _______________________________________________
> Qemu-devel mailing list
> address@hidden
> http://lists.nongnu.org/mailman/listinfo/qemu-devel
>




reply via email to

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