Bug 709230 - qemu segmentation fault when rebooting after hot-unplug a block device
Summary: qemu segmentation fault when rebooting after hot-unplug a block device
Keywords:
Status: CLOSED DUPLICATE of bug 645339
Alias: None
Product: Red Hat Enterprise Linux 5
Classification: Red Hat
Component: kvm
Version: 5.7
Hardware: Unspecified
OS: Linux
medium
medium
Target Milestone: rc
: ---
Assignee: Virtualization Maintenance
QA Contact: Virtualization Bugs
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2011-05-31 06:47 UTC by Qingtang Zhou
Modified: 2013-09-30 01:29 UTC (History)
5 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2011-05-31 06:58:42 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)

Description Qingtang Zhou 2011-05-31 06:47:11 UTC
Description of problem:
I hot-plug 2 virtio block devices on a RHEL5.7 guest, then I hot-unplug one of them, and reboot guest. qemu will exit with signal 11 during rebooting.

Version-Release number of selected component (if applicable):
host: RHEL-5.7, guest: RHEL-5.7
#rpm -q kernel
kernel-2.6.18-238.el5
#rpm -q kvm
kvm-83-231.el5

How reproducible:
100%

Steps to Reproduce:
1. start a guest.
# qemu ... --drive file=/RHEL-Server-5.7-32-virtio.qcow2,index=0,if=virtio,media=disk,cache=none,boot=on,format=qcow2 ...

2. hot-plug 2 block device via monitor:
(qemu) pci_add pci_addr=auto storage file=storage_64k.qcow2,if=virtio,format=qcow2,cache=none,werror=stop
pci_add pci_addr=auto storage file=storage_64k.qcow2,if=virtio
OK domain 0, bus 0, slot 7, function 0
(qemu) pci_add pci_addr=auto storage file=storage_4k.qcow2,if=virtio,format=qcow2,cache=none,werror=stop
pci_add pci_addr=auto storage file=storage_4k.qcow2,if=virtio
OK domain 0, bus 0, slot 8, function 0

3. hot-unplug the first device:
(qemu) pci_del pci_addr=7
pci_del pci_addr=7

4. run 'reboot' in guest.
5. qemu exit.
  
Actual results:
qemu segfault.

Expected results:
qemu run's well, guest reboot ok.

Additional info:
full qemu command line:
/home/autotest/client/tests/kvm/qemu \
-name vm1 \
-monitor unix:/tmp/monitor-humanmonitor1-20110531-183508-GvKW,server,nowait \
-serial unix:/tmp/serial-20110531-183508-GvKW,server,nowait \
-drive file=/home/autotest/client/tests/kvm/images/RHEL-Server-5.7-32-virtio.qcow2,index=0,if=virtio,media=disk,cache=none,boot=on,format=qcow2 \
-net nic,vlan=0,model=virtio,macaddr=9a:58:2a:24:72:fa \
-net tap,vlan=0,ifname=t0-183508-GvKW,script=/home/autotest/client/tests/kvm/scripts/qemu-ifup-switch,downscript=no \
-m 4096 \
-smp 2,cores=1,threads=1,sockets=2 \
-cpu qemu64,+sse2 \
-soundhw ac97 \
-vnc :0 \
-rtc-td-hack \
-M rhel5.6.0 \
-boot c \
-usbdevice tablet \
-no-kvm-pit-reinjection

qemu backtrace:
Program terminated with signal 11, Segmentation fault.
#0  0x000000000b84e3d0 in ?? ()
(gdb) bt
#0  0x000000000b84e3d0 in ?? ()
#1  0x0000000000415fdb in virtio_reset (opaque=<value optimized out>)
    at /usr/src/debug/kvm-83-maint-snapshot-20090205/qemu/hw/virtio.c:500
#2  0x0000000000407766 in qemu_system_reset () at /usr/src/debug/kvm-83-maint-snapshot-20090205/qemu/vl.c:3942
#3  0x0000000000500e46 in qemu_kvm_system_reset ()
    at /usr/src/debug/kvm-83-maint-snapshot-20090205/qemu/qemu-kvm.c:369
#4  kvm_main_loop () at /usr/src/debug/kvm-83-maint-snapshot-20090205/qemu/qemu-kvm.c:604
#5  0x000000000040e757 in main_loop (argc=31, argv=0x7fffc365e468, envp=<value optimized out>)
    at /usr/src/debug/kvm-83-maint-snapshot-20090205/qemu/vl.c:4157
#6  main (argc=31, argv=0x7fffc365e468, envp=<value optimized out>)
    at /usr/src/debug/kvm-83-maint-snapshot-20090205/qemu/vl.c:6559

Comment 1 juzhang 2011-05-31 06:58:42 UTC

*** This bug has been marked as a duplicate of bug 645339 ***


Note You need to log in before you can comment on or make changes to this bug.