Qemu 1.2.0 crashes when using tcp serial console and GRUB boots

Bug #1081416 reported by Jérôme Poulin
10
This bug affects 2 people
Affects Status Importance Assigned to Milestone
QEMU
Expired
Undecided
Unassigned

Bug Description

When booting OpenWRT Attitude Adjustement ( http://downloads.openwrt.org/attitude_adjustment/12.09-beta2/x86/generic/openwrt-x86-generic-combined-ext4.img.gz ) with this command line:
qemu-system-x86_64 -serial tcp:127.0.0.1:4444 -hda openwrt-x86-generic-combined-ext4.img

Qemu crashes as soon as GRUB starts, after network cards start.

*** buffer overflow detected ***: /usr/bin/qemu-system-x86_64 terminated
======= Backtrace: =========
/usr/lib/libc.so.6(__fortify_fail+0x37)[0x7ffff45f2ad7]
/usr/lib/libc.so.6(+0xf9bb0)[0x7ffff45f0bb0]
/usr/lib/libc.so.6(+0xfba47)[0x7ffff45f2a47]
/usr/bin/qemu-system-x86_64[0x46a628]
/usr/bin/qemu-system-x86_64[0x4e8a14]
/usr/bin/qemu-system-x86_64[0x4e802b]
/usr/lib/libc.so.6(__libc_start_main+0xf5)[0x7ffff4518725]
/usr/bin/qemu-system-x86_64[0x40d949]

Here is a GDB backtrace:

Program received signal SIGABRT, Aborted.
0x00007ffff452bfa5 in raise () from /usr/lib/libc.so.6
(gdb) bt
#0 0x00007ffff452bfa5 in raise () from /usr/lib/libc.so.6
#1 0x00007ffff452d428 in abort () from /usr/lib/libc.so.6
#2 0x00007ffff456acfb in __libc_message () from /usr/lib/libc.so.6
#3 0x00007ffff45f2ad7 in __fortify_fail () from /usr/lib/libc.so.6
#4 0x00007ffff45f0bb0 in __chk_fail () from /usr/lib/libc.so.6
#5 0x00007ffff45f2a47 in __fdelt_warn () from /usr/lib/libc.so.6
#6 0x000000000046a628 in qemu_iohandler_poll (readfds=0xdb7da0 <rfds>,
    writefds=0xdb7e20 <wfds>, xfds=0x6, xfds@entry=0xdb7ea0 <xfds>, ret=-1,
    ret@entry=1) at iohandler.c:121
#7 0x00000000004e8a14 in main_loop_wait (nonblocking=<optimized out>)
    at main-loop.c:497
#8 0x00000000004e802b in main_loop ()
    at /usr/src/aur/qemu/src/qemu-1.2.0/vl.c:1643
#9 main (argc=<optimized out>, argv=<optimized out>, envp=<optimized out>)
    at /usr/src/aur/qemu/src/qemu-1.2.0/vl.c:3755
(gdb)

Here is a more useless dump...

Revision history for this message
Stefan Hajnoczi (stefanha) wrote : Re: [Qemu-devel] [Bug 1081416] [NEW] Qemu 1.2.0 crashes when using tcp serial console and GRUB boots

On Wed, Nov 21, 2012 at 03:14:28AM -0000, Jérôme Poulin wrote:
> When booting OpenWRT Attitude Adjustement ( http://downloads.openwrt.org/attitude_adjustment/12.09-beta2/x86/generic/openwrt-x86-generic-combined-ext4.img.gz ) with this command line:
> qemu-system-x86_64 -serial tcp:127.0.0.1:4444 -hda openwrt-x86-generic-combined-ext4.img
>
> Qemu crashes as soon as GRUB starts, after network cards start.
[...]
> Program received signal SIGABRT, Aborted.
> 0x00007ffff452bfa5 in raise () from /usr/lib/libc.so.6
> (gdb) bt
> #0 0x00007ffff452bfa5 in raise () from /usr/lib/libc.so.6
> #1 0x00007ffff452d428 in abort () from /usr/lib/libc.so.6
> #2 0x00007ffff456acfb in __libc_message () from /usr/lib/libc.so.6
> #3 0x00007ffff45f2ad7 in __fortify_fail () from /usr/lib/libc.so.6
> #4 0x00007ffff45f0bb0 in __chk_fail () from /usr/lib/libc.so.6
> #5 0x00007ffff45f2a47 in __fdelt_warn () from /usr/lib/libc.so.6
> #6 0x000000000046a628 in qemu_iohandler_poll (readfds=0xdb7da0 <rfds>,
> writefds=0xdb7e20 <wfds>, xfds=0x6, xfds@entry=0xdb7ea0 <xfds>, ret=-1,
> ret@entry=1) at iohandler.c:121
> #7 0x00000000004e8a14 in main_loop_wait (nonblocking=<optimized out>)
> at main-loop.c:497
> #8 0x00000000004e802b in main_loop ()
> at /usr/src/aur/qemu/src/qemu-1.2.0/vl.c:1643
> #9 main (argc=<optimized out>, argv=<optimized out>, envp=<optimized out>)
> at /usr/src/aur/qemu/src/qemu-1.2.0/vl.c:3755

Can't reproduce on qemu.git/master (1ccbc2851282564308f790753d7158487b6af8e2) or
qemu-system-x86-1.2.0-23.fc18.x86_64.

I get to the OpenWRT root prompt.

Please build qemu.git/master from source to verify whether this issue
still exists:

  $ git clone git://git.qemu-project.org/qemu.git
  $ cd qemu
  $ ./configure --target-list=x86_64-softmmu && make
  $ x86_64-softmmu/qemu-system-x86_64 -serial tcp:127.0.0.1:4444 -hda openwrt-x86-generic-combined-ext4.img

Note that if you want to connect to the serial port you should use
-serial tcp:127.0.0.1:4444,server. The command-line you specified tries
to connect to 127.0.0.1:4444 as a client instead of listening as a
server.

Thanks,
Stefan

Revision history for this message
Ian Wells (ijw-ubuntu) wrote :

I'm seeing this too. If someone cares to tell me how I get a core file from qemu-under-libvirt I will do that and report back on debugging.

Revision history for this message
Ian Wells (ijw-ubuntu) wrote :

(fairly sure it's in the iohandler based on a manual check of the symbols, though)

Revision history for this message
Thomas Huth (th-huth) wrote :

Can you still reproduce this issue somehow with the latest version of QEMU (currently v2.9.0)? Otherwise, I think we can close this ticket nowadays...

Thomas Huth (th-huth)
Changed in qemu:
status: New → Incomplete
Revision history for this message
Launchpad Janitor (janitor) wrote :

[Expired for QEMU because there has been no activity for 60 days.]

Changed in qemu:
status: Incomplete → Expired
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.