Bug 1001617

Summary: qemu 1.6 + windows guest + virtio-win + 'chkdsk' in the guest gives qemu assertion in scsi_dma_complete
Product: [Fedora] Fedora Reporter: Alexander Dyadyun <Shurik>
Component: qemuAssignee: Paolo Bonzini <pbonzini>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: rawhideCC: amit.shah, bcao, berrange, cfergeau, crobinso, dwmw2, ghammer, itamar, juzhang, pbonzini, rjones, scottt.tw, Shurik, sluo, virt-maint, vrozenfe, yvugenfi
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Unspecified   
Whiteboard: abrt_hash:cbd1ea720361c9d31e55ba0755961526dd5d49b5
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
: 1035644 (view as bug list) Environment:
Last Closed: 2013-12-18 19:59:20 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1035644    
Attachments:
Description Flags
File: backtrace
none
File: cgroup
none
File: core_backtrace
none
File: dso_list
none
File: environ
none
File: limits
none
File: maps
none
File: open_fds
none
File: proc_pid_status
none
File: var_log_messages
none
Log of windows guest none

Description Alexander Dyadyun 2013-08-27 12:05:33 UTC
Description of problem:
Fedora 19_64bit (kernel 3.10.9-200) && qemu 1.4.2-7 && VirtManager 0.10.0-1

1. Start Win2k8 R2 guest (2 Virtio SCSI disks)
2. Start check of guest system disk (chkdsk c: /x /f /v /r)
3. Reboot guest for start checking
4. Got error on filedata-checking stage

P.S. All linux guests (on VirtIO disks) are rock solid.

Version-Release number of selected component:
qemu-system-x86-1.4.2-7.fc19

Additional info:
reporter:       libreport-2.1.6
backtrace_rating: 4
cmdline:        /usr/bin/qemu-system-x86_64 -machine accel=kvm -name KrogothD -S -machine pc-i440fx-1.4,accel=kvm,usb=off -cpu Penryn,+osxsave,+xsave,+pdcm,+xtpr,+tm2,+est,+vmx,+ds_cpl,+monitor,+dtes64,+pbe,+tm,+ht,+ss,+acpi,+ds,+vme -m 2048 -smp 2,sockets=2,cores=1,threads=1 -uuid 6174a7fe-6ff0-cb44-f19e-852f0520266f -no-user-config -nodefaults -chardev socket,id=charmonitor,path=/var/lib/libvirt/qemu/KrogothD.monitor,server,nowait -mon chardev=charmonitor,id=monitor,mode=control -rtc base=localtime -no-shutdown -boot menu=off -device ich9-usb-ehci1,id=usb,bus=pci.0,addr=0x6.0x7 -device ich9-usb-uhci1,masterbus=usb.0,firstport=0,bus=pci.0,multifunction=on,addr=0x6 -device ich9-usb-uhci2,masterbus=usb.0,firstport=2,bus=pci.0,addr=0x6.0x1 -device ich9-usb-uhci3,masterbus=usb.0,firstport=4,bus=pci.0,addr=0x6.0x2 -device virtio-scsi-pci,id=scsi0,bus=pci.0,addr=0x4 -drive file=/vm/KrogothD_system.img,if=none,id=drive-scsi0-0-0-0,format=qcow2 -device scsi-hd,bus=scsi0.0,channel=0,scsi-id=0,lun=0,drive=drive-scsi0-0-0-0,id=scsi0-0-0-0,bootindex=1 -drive file=/vm/KrogothD_data.img,if=none,id=drive-scsi0-0-0-1,format=qcow2 -device scsi-hd,bus=scsi0.0,channel=0,scsi-id=0,lun=1,drive=drive-scsi0-0-0-1,id=scsi0-0-0-1 -netdev tap,fd=25,id=hostnet0,vhost=on,vhostfd=26 -device virtio-net-pci,netdev=hostnet0,id=net0,mac=52:54:00:ab:bc:cd,bus=pci.0,addr=0x3 -chardev pty,id=charserial0 -device isa-serial,chardev=charserial0,id=serial0 -device usb-tablet,id=input0 -vnc 127.0.0.1:3 -vga std -device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x5
crash_function: __assert_fail_base
executable:     /usr/bin/qemu-system-x86_64
kernel:         3.10.9-200.fc19.x86_64
runlevel:       N 5
uid:            107

Truncated backtrace:
Thread no. 1 (10 frames)
 #2 __assert_fail_base at assert.c:92
 #3 __assert_fail at assert.c:101
 #4 scsi_dma_complete at hw/scsi-disk.c:250
 #5 dma_complete at dma-helpers.c:124
 #6 dma_bdrv_cb at dma-helpers.c:152
 #7 dma_bdrv_io at dma-helpers.c:222
 #8 dma_bdrv_read at dma-helpers.c:231
 #9 scsi_do_read at hw/scsi-disk.c:337
 #10 bdrv_co_em_bh at block.c:3820
 #11 aio_bh_poll at async.c:69

Comment 1 Alexander Dyadyun 2013-08-27 12:05:41 UTC
Created attachment 790931 [details]
File: backtrace

Comment 2 Alexander Dyadyun 2013-08-27 12:05:47 UTC
Created attachment 790932 [details]
File: cgroup

Comment 3 Alexander Dyadyun 2013-08-27 12:05:53 UTC
Created attachment 790933 [details]
File: core_backtrace

Comment 4 Alexander Dyadyun 2013-08-27 12:05:59 UTC
Created attachment 790934 [details]
File: dso_list

Comment 5 Alexander Dyadyun 2013-08-27 12:06:05 UTC
Created attachment 790935 [details]
File: environ

Comment 6 Alexander Dyadyun 2013-08-27 12:06:11 UTC
Created attachment 790936 [details]
File: limits

Comment 7 Alexander Dyadyun 2013-08-27 12:06:16 UTC
Created attachment 790937 [details]
File: maps

Comment 8 Alexander Dyadyun 2013-08-27 12:06:22 UTC
Created attachment 790938 [details]
File: open_fds

Comment 9 Alexander Dyadyun 2013-08-27 12:06:27 UTC
Created attachment 790939 [details]
File: proc_pid_status

Comment 10 Alexander Dyadyun 2013-08-27 12:06:33 UTC
Created attachment 790940 [details]
File: var_log_messages

Comment 11 Alexander Dyadyun 2013-08-27 13:56:20 UTC
Interesting... 
The same sequence with virtual IDE-disks on same guest does not generate any errors.

Comment 12 Cole Robinson 2013-08-30 23:14:56 UTC
Thanks for the report Alexander. Possibly fixed by:

commit ef8489d45927a6d35b214365e4b39ab311b48f2a
Author: Paolo Bonzini <pbonzini>
Date:   Mon Apr 8 18:50:15 2013 +0200

    scsi: avoid assertion failure on VERIFY command
    
    A verify command is not an actual read (we do not implement
    compare mode) and thus does not have an AIOCB attached.  Do
    not crash in scsi_dma_complete.
    
    Signed-off-by: Paolo Bonzini <pbonzini>

Comment 13 Fedora Update System 2013-09-03 19:48:46 UTC
qemu-1.4.2-8.fc19 has been submitted as an update for Fedora 19.
https://admin.fedoraproject.org/updates/qemu-1.4.2-8.fc19

Comment 14 Fedora Update System 2013-09-05 01:27:12 UTC
Package qemu-1.4.2-8.fc19:
* should fix your issue,
* was pushed to the Fedora 19 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing qemu-1.4.2-8.fc19'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/FEDORA-2013-15760/qemu-1.4.2-8.fc19
then log in and leave karma (feedback).

Comment 15 Fedora Update System 2013-09-05 09:56:51 UTC
qemu-1.4.2-9.fc19 has been submitted as an update for Fedora 19.
https://admin.fedoraproject.org/updates/qemu-1.4.2-9.fc19

Comment 16 Alexander Dyadyun 2013-09-05 12:33:59 UTC
Sorry, guys!
Just installed qemu-1.4.2-9.fc19 and got same problem... On disk checking (free space checking stage) qemu was crashed.

Comment 17 Cole Robinson 2013-09-05 15:02:46 UTC
Thanks for checking Alexander. Can you attach /var/log/libvirt/qemu/$vmname.log?

Another thing to check is enable the fedora-virt-preview repo, update qemu, and see if you can still reproduce, that has qemu 1.6 in it. Undoing is as simple as 'yum downgrade qemu\*' to revert to F19 packages.

http://fedoraproject.org/wiki/Virtualization_Preview_Repository

Comment 18 Alexander Dyadyun 2013-09-05 23:50:39 UTC
Created attachment 794547 [details]
Log of windows guest

log of windows guest

no errors on IDE/VirtIO disks, but problems on VirtIO SCSI disks

Comment 19 Alexander Dyadyun 2013-09-05 23:53:23 UTC
Test of 1.6 version will be after weekend (sorry).

Comment 20 Cole Robinson 2013-09-09 13:35:39 UTC
Log doesn't have much interesting besides the assertion output:

LC_ALL=C PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin QEMU_AUDIO_DRV=none /usr/bin/qemu-kvm -name KrogothD -S -machine pc-i440fx-1.4,accel=kvm,usb=off -cpu Penryn,+osxsave,+xsave,+pdcm,+xtpr,+tm2,+est,+vmx,+ds_cpl,+monitor,+dtes64,+pbe,+tm,+ht,+ss,+acpi,+ds,+vme -m 2048 -smp 2,sockets=2,cores=1,threads=1 -uuid 6174a7fe-6ff0-cb44-f19e-852f0520266f -no-user-config -nodefaults -chardev socket,id=charmonitor,path=/var/lib/libvirt/qemu/KrogothD.monitor,server,nowait -mon chardev=charmonitor,id=monitor,mode=control -rtc base=localtime -no-shutdown -boot menu=off -device ich9-usb-ehci1,id=usb,bus=pci.0,addr=0x6.0x7 -device ich9-usb-uhci1,masterbus=usb.0,firstport=0,bus=pci.0,multifunction=on,addr=0x6 -device ich9-usb-uhci2,masterbus=usb.0,firstport=2,bus=pci.0,addr=0x6.0x1 -device ich9-usb-uhci3,masterbus=usb.0,firstport=4,bus=pci.0,addr=0x6.0x2 -device virtio-scsi-pci,id=scsi0,bus=pci.0,addr=0x4 -drive file=/vm/KrogothD_system.img,if=none,id=drive-scsi0-0-0-0,format=qcow2 -device scsi-hd,bus=scsi0.0,channel=0,scsi-id=0,lun=0,drive=drive-scsi0-0-0-0,id=scsi0-0-0-0,bootindex=1 -drive file=/vm/KrogothD_data.img,if=none,id=drive-scsi0-0-1-0,format=qcow2 -device scsi-hd,bus=scsi0.0,channel=0,scsi-id=1,lun=0,drive=drive-scsi0-0-1-0,id=scsi0-0-1-0 -netdev tap,fd=25,id=hostnet0,vhost=on,vhostfd=26 -device virtio-net-pci,netdev=hostnet0,id=net0,mac=52:54:00:ab:bc:cd,bus=pci.0,addr=0x3 -chardev pty,id=charserial0 -device isa-serial,chardev=charserial0,id=serial0 -device usb-tablet,id=input0 -vnc 127.0.0.1:3 -vga std -device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x5
char device redirected to /dev/pts/6 (label charserial0)
qemu-system-x86_64: hw/scsi-disk.c:283: scsi_dma_complete: Assertion `r->req.aiocb != ((void *)0)' failed.

Comment 21 Alexander Dyadyun 2013-09-10 12:04:49 UTC
Sequel of bug 1001617 (same problem, but with qemu 1.6.0-6.fc19 from fedora-virt-preview repo):

Same test sequense on Windows guest with two Virtual SCSI disks:
1. Start Win2k8 R2 guest (2 Virtio SCSI disks)
2. Start check of guest system disk (chkdsk c: /x /f /v /r)
3. Reboot guest for start checking
4. Got error on freespace-checking stage

reporter:       libreport-2.1.6
backtrace_rating: 4
cmdline:        /usr/bin/qemu-system-x86_64 -machine accel=kvm -name KrogothD -S -machine pc-i440fx-1.4,accel=kvm,usb=off -cpu Penryn,+osxsave,+xsave,+pdcm,+xtpr,+tm2,+est,+vmx,+ds_cpl,+monitor,+dtes64,+pbe,+tm,+ht,+ss,+acpi,+ds,+vme -m 2048 -realtime mlock=off -smp 2,sockets=2,cores=1,threads=1 -uuid 6174a7fe-6ff0-cb44-f19e-852f0520266f -no-user-config -nodefaults -chardev socket,id=charmonitor,path=/var/lib/libvirt/qemu/KrogothD.monitor,server,nowait -mon chardev=charmonitor,id=monitor,mode=control -rtc base=localtime -no-shutdown -boot menu=off -device ich9-usb-ehci1,id=usb,bus=pci.0,addr=0x6.0x7 -device ich9-usb-uhci1,masterbus=usb.0,firstport=0,bus=pci.0,multifunction=on,addr=0x6 -device ich9-usb-uhci2,masterbus=usb.0,firstport=2,bus=pci.0,addr=0x6.0x1 -device ich9-usb-uhci3,masterbus=usb.0,firstport=4,bus=pci.0,addr=0x6.0x2 -device virtio-scsi-pci,id=scsi0,bus=pci.0,addr=0x4 -drive file=/vm/KrogothD_system.img,if=none,id=drive-scsi0-0-0-0,format=qcow2 -device scsi-hd,bus=scsi0.0,channel=0,scsi-id=0,lun=0,drive=drive-scsi0-0-0-0,id=scsi0-0-0-0,bootindex=1 -drive file=/vm/KrogothD_data.img,if=none,id=drive-scsi0-0-0-1,format=qcow2 -device scsi-hd,bus=scsi0.0,channel=0,scsi-id=0,lun=1,drive=drive-scsi0-0-0-1,id=scsi0-0-0-1 -netdev tap,fd=26,id=hostnet0,vhost=on,vhostfd=27 -device virtio-net-pci,netdev=hostnet0,id=net0,mac=52:54:00:ab:bc:cd,bus=pci.0,addr=0x3 -chardev pty,id=charserial0 -device isa-serial,chardev=charserial0,id=serial0 -device usb-tablet,id=input0 -vnc 127.0.0.1:3 -device VGA,id=video0,bus=pci.0,addr=0x2 -device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x5
crash_function: __assert_fail_base
executable:     /usr/bin/qemu-system-x86_64
kernel:         3.10.10-200.fc19.x86_64
package:        qemu-system-x86-1.6.0-6.fc19
reason:         Process /usr/bin/qemu-system-x86_64 was killed by signal 6 (SIGABRT)
runlevel:       N 5
uid:            107

Comment 22 Alexander Dyadyun 2013-09-10 12:32:28 UTC
trying to upload backtraces...

reporter:       libreport-2.1.6
backtrace_rating: 4
cmdline:        /usr/bin/qemu-system-x86_64 -machine accel=kvm -name KrogothD -S -machine pc-i440fx-1.4,accel=kvm,usb=off -cpu Penryn,+osxsave,+xsave,+pdcm,+xtpr,+tm2,+est,+vmx,+ds_cpl,+monitor,+dtes64,+pbe,+tm,+ht,+ss,+acpi,+ds,+vme -m 2048 -realtime mlock=off -smp 2,sockets=2,cores=1,threads=1 -uuid 6174a7fe-6ff0-cb44-f19e-852f0520266f -no-user-config -nodefaults -chardev socket,id=charmonitor,path=/var/lib/libvirt/qemu/KrogothD.monitor,server,nowait -mon chardev=charmonitor,id=monitor,mode=control -rtc base=localtime -no-shutdown -boot menu=off -device ich9-usb-ehci1,id=usb,bus=pci.0,addr=0x6.0x7 -device ich9-usb-uhci1,masterbus=usb.0,firstport=0,bus=pci.0,multifunction=on,addr=0x6 -device ich9-usb-uhci2,masterbus=usb.0,firstport=2,bus=pci.0,addr=0x6.0x1 -device ich9-usb-uhci3,masterbus=usb.0,firstport=4,bus=pci.0,addr=0x6.0x2 -device virtio-scsi-pci,id=scsi0,bus=pci.0,addr=0x4 -drive file=/vm/KrogothD_system.img,if=none,id=drive-scsi0-0-0-0,format=qcow2 -device scsi-hd,bus=scsi0.0,channel=0,scsi-id=0,lun=0,drive=drive-scsi0-0-0-0,id=scsi0-0-0-0,bootindex=1 -drive file=/vm/KrogothD_data.img,if=none,id=drive-scsi0-0-0-1,format=qcow2 -device scsi-hd,bus=scsi0.0,channel=0,scsi-id=0,lun=1,drive=drive-scsi0-0-0-1,id=scsi0-0-0-1 -netdev tap,fd=26,id=hostnet0,vhost=on,vhostfd=27 -device virtio-net-pci,netdev=hostnet0,id=net0,mac=52:54:00:ab:bc:cd,bus=pci.0,addr=0x3 -chardev pty,id=charserial0 -device isa-serial,chardev=charserial0,id=serial0 -device usb-tablet,id=input0 -vnc 127.0.0.1:3 -device VGA,id=video0,bus=pci.0,addr=0x2 -device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x5
crash_function: __assert_fail_base
executable:     /usr/bin/qemu-system-x86_64
kernel:         3.10.10-200.fc19.x86_64
package:        qemu-system-x86-1.6.0-6.fc19
reason:         Process /usr/bin/qemu-system-x86_64 was killed by signal 6 (SIGABRT)
runlevel:       N 5
uid:            107

Comment 23 Alexander Dyadyun 2013-09-10 12:42:22 UTC
Sorry, it was error on file upload in time of comment 21. And I don't know how and what manually upload after new crashtest.

Comment 24 Cole Robinson 2013-09-20 19:17:48 UTC
Sounds like a straightforward reproducer with qemu 1.6 + windows + virtio-scsi + 'chkdsk c: /x /f /v /r' inside the VM. I'll reassign to virtio-win but might be a qemu issue

Comment 25 Paolo Bonzini 2013-09-23 12:10:32 UTC
Thanks for the report, I'll try to reproduce.

Comment 26 Sibiao Luo 2013-11-28 09:01:38 UTC
(In reply to Cole Robinson from comment #24)
> Sounds like a straightforward reproducer with qemu 1.6 + windows +
> virtio-scsi + 'chkdsk c: /x /f /v /r' inside the VM. I'll reassign to
> virtio-win but might be a qemu issue

I just tried two times for the Win2k8 R2 guest on the rhel6.5 host and rhel7.0 with the same steps as comment 1001617#c21 using the same virtio-win-prewhql-0.1-74 driver version, It worked well on rhel6.5 host, but met this issue on rhel7.0 host which QEMU aborted. I think it's QEMU issue as the same virtio-win driver version just different qemu-kvm version.

host info:
- rhel6.5 host.
3.10.0-55.el7.x86_64
qemu-kvm-rhev-1.5.3-19.el7.x86_64
seabios-bin-1.7.2.2-4.el7.noarch
- rhel7.0 host.
host info:
3.10.0-55.el7.x86_64
qemu-kvm-rhev-1.5.3-19.el7.x86_64
seabios-bin-1.7.2.2-4.el7.noarch

guest info:
Win2k8 R2 64bit
virtio-win-prewhql-0.1-74

Steps:
same to bug 1001617#c21.

Results:
QEMU will aborted on rhel7 host after reboot windows guest for start checking,
But it worked well on rhel6.5 guest, both two times of testing can pass successfully.

My qemu-kvm command line:
# /usr/libexec/qemu-kvm -M pc -S -cpu SandyBridge -enable-kvm -m 2048 -smp 2,sockets=2,cores=1,threads=1 -no-kvm-pit-reinjection -usb -device usb-tablet,id=input0 -name zxc -uuid 990ea161-6b67-47b2-b803-19fb01e30d30 -rtc base=localtime,clock=host,driftfix=slew -device virtio-serial-pci,id=virtio-serial0,max_ports=16,vectors=0,bus=pci.0,addr=0x3 -chardev socket,id=channel1,path=/tmp/helloworld1,server,nowait -device virtserialport,chardev=channel1,name=com.redhat.rhevm.vdsm,bus=virtio-serial0.0,id=port1 -chardev socket,id=channel2,path=/tmp/helloworld2,server,nowait -device virtserialport,chardev=channel2,name=com.redhat.rhevm.vdsm,bus=virtio-serial0.0,id=port2 -drive file=/home/win2008r2-64.qcow2,if=none,id=drive-system-disk,format=qcow2,cache=none,aio=native,werror=stop,rerror=stop -device virtio-scsi-pci,bus=pci.0,addr=0x4,id=scsi0 -device scsi-hd,drive=drive-system-disk,bus=scsi0.0,channel=0,scsi-id=0,lun=0,id=system-disk,bootindex=1 -netdev tap,id=hostnet0,vhost=on,script=/etc/qemu-ifup -device virtio-net-pci,netdev=hostnet0,id=virtio-net-pci0,mac=00:01:02:B6:40:11,bus=pci.0,addr=0x5 -device virtio-balloon-pci,id=ballooning,bus=pci.0,addr=0x6 -global PIIX4_PM.disable_s3=0 -global PIIX4_PM.disable_s4=0 -drive file=/home/my-data-disk.qcow2,if=none,id=drive-data-disk,format=qcow2,cache=none,aio=native,werror=stop,rerror=stop -device scsi-hd,drive=drive-data-disk,bus=scsi0.0,channel=0,scsi-id=0,lun=1,id=data-disk -k en-us -boot menu=on -qmp tcp:0:4444,server,nowait -serial unix:/tmp/ttyS0,server,nowait -vnc :2 -spice disable-ticketing,port=5932 -monitor stdio
Warning: option deprecated, use lost_tick_policy property of kvm-pit instead.
QEMU 1.5.3 monitor - type 'help' for more information
(qemu) c
(qemu) qemu-kvm: hw/scsi/scsi-disk.c:286: scsi_dma_complete: Assertion `r->req.aiocb != ((void *)0)' failed.
Aborted (core dumped)

bt log as following:
(gdb) bt
#0  0x00007f09b0ac5979 in raise () from /lib64/libc.so.6
#1  0x00007f09b0ac7088 in abort () from /lib64/libc.so.6
#2  0x00007f09b0abe8e6 in __assert_fail_base () from /lib64/libc.so.6
#3  0x00007f09b0abe992 in __assert_fail () from /lib64/libc.so.6
#4  0x00007f09b5b5dc03 in scsi_dma_complete (opaque=<optimized out>, ret=<optimized out>) at hw/scsi/scsi-disk.c:286
#5  0x00007f09b5aec502 in dma_complete (dbs=0x7f09b8cf61b0, ret=0) at dma-helpers.c:124
#6  0x00007f09b5aec772 in dma_bdrv_cb (opaque=opaque@entry=0x7f09b8cf61b0, ret=ret@entry=0) at dma-helpers.c:152
#7  0x00007f09b5aec899 in dma_bdrv_io (bs=0x7f09b89c5d10, sg=0x7f09b90665b0, sector_num=5216, 
    io_func=0x7f09b5aad6d0 <bdrv_aio_readv>, cb=cb@entry=0x7f09b5b5dbb0 <scsi_dma_complete>, 
    opaque=opaque@entry=0x7f09ba2217b0, dir=dir@entry=DMA_DIRECTION_FROM_DEVICE) at dma-helpers.c:222
#8  0x00007f09b5aec8ed in dma_bdrv_read (bs=<optimized out>, sg=<optimized out>, sector=<optimized out>, 
    cb=cb@entry=0x7f09b5b5dbb0 <scsi_dma_complete>, opaque=opaque@entry=0x7f09ba2217b0) at dma-helpers.c:231
#9  0x00007f09b5b5ccdd in scsi_do_read (opaque=0x7f09ba2217b0, ret=0) at hw/scsi/scsi-disk.c:349
#10 0x00007f09b5aa9382 in bdrv_co_em_bh (opaque=<optimized out>) at block.c:3992
#11 0x00007f09b5a999ca in aio_bh_poll (ctx=ctx@entry=0x7f09b899a240) at async.c:70
#12 0x00007f09b5a99598 in aio_poll (ctx=0x7f09b899a240, blocking=blocking@entry=false) at aio-posix.c:185
#13 0x00007f09b5a998c0 in aio_ctx_dispatch (source=<optimized out>, callback=<optimized out>, user_data=<optimized out>)
    at async.c:167
#14 0x00007f09b4ed3e06 in g_main_context_dispatch () from /lib64/libglib-2.0.so.0
#15 0x00007f09b5b8ed2a in glib_pollfds_poll () at main-loop.c:187
#16 os_host_main_loop_wait (timeout=<optimized out>) at main-loop.c:232
#17 main_loop_wait (nonblocking=<optimized out>) at main-loop.c:464
#18 0x00007f09b5a94f18 in main_loop () at vl.c:1986
#19 main (argc=<optimized out>, argv=<optimized out>, envp=<optimized out>) at vl.c:4343
(gdb) bt full
#0  0x00007f09b0ac5979 in raise () from /lib64/libc.so.6
No symbol table info available.
#1  0x00007f09b0ac7088 in abort () from /lib64/libc.so.6
No symbol table info available.
#2  0x00007f09b0abe8e6 in __assert_fail_base () from /lib64/libc.so.6
No symbol table info available.
#3  0x00007f09b0abe992 in __assert_fail () from /lib64/libc.so.6
No symbol table info available.
#4  0x00007f09b5b5dc03 in scsi_dma_complete (opaque=<optimized out>, ret=<optimized out>) at hw/scsi/scsi-disk.c:286
        opaque = <optimized out>
        ret = <optimized out>
        r = <optimized out>
#5  0x00007f09b5aec502 in dma_complete (dbs=0x7f09b8cf61b0, ret=0) at dma-helpers.c:124
No locals.
#6  0x00007f09b5aec772 in dma_bdrv_cb (opaque=opaque@entry=0x7f09b8cf61b0, ret=ret@entry=0) at dma-helpers.c:152
        dbs = 0x7f09b8cf61b0
        cur_addr = <optimized out>
        cur_len = 139679679307087
        mem = <optimized out>
        __PRETTY_FUNCTION__ = "dma_bdrv_cb"
#7  0x00007f09b5aec899 in dma_bdrv_io (bs=0x7f09b89c5d10, sg=0x7f09b90665b0, sector_num=5216, 
    io_func=0x7f09b5aad6d0 <bdrv_aio_readv>, cb=cb@entry=0x7f09b5b5dbb0 <scsi_dma_complete>, 
    opaque=opaque@entry=0x7f09ba2217b0, dir=dir@entry=DMA_DIRECTION_FROM_DEVICE) at dma-helpers.c:222
        dbs = 0x7f09b8cf61b0
#8  0x00007f09b5aec8ed in dma_bdrv_read (bs=<optimized out>, sg=<optimized out>, sector=<optimized out>, 
    cb=cb@entry=0x7f09b5b5dbb0 <scsi_dma_complete>, opaque=opaque@entry=0x7f09ba2217b0) at dma-helpers.c:231
No locals.
#9  0x00007f09b5b5ccdd in scsi_do_read (opaque=0x7f09ba2217b0, ret=0) at hw/scsi/scsi-disk.c:349
        r = 0x7f09ba2217b0
        s = 0x7f09b8d37860
        n = <optimized out>
#10 0x00007f09b5aa9382 in bdrv_co_em_bh (opaque=<optimized out>) at block.c:3992
No locals.
#11 0x00007f09b5a999ca in aio_bh_poll (ctx=ctx@entry=0x7f09b899a240) at async.c:70
        bh = <optimized out>
        bhp = <optimized out>
        next = 0x7f09b8cf3310
        ret = 1
#12 0x00007f09b5a99598 in aio_poll (ctx=0x7f09b899a240, blocking=blocking@entry=false) at aio-posix.c:185
        node = <optimized out>
        ret = <optimized out>
        busy = <optimized out>
        progress = false
#13 0x00007f09b5a998c0 in aio_ctx_dispatch (source=<optimized out>, callback=<optimized out>, user_data=<optimized out>)
    at async.c:167
        ctx = <optimized out>
#14 0x00007f09b4ed3e06 in g_main_context_dispatch () from /lib64/libglib-2.0.so.0
No symbol table info available.
#15 0x00007f09b5b8ed2a in glib_pollfds_poll () at main-loop.c:187
        context = 0x7f09b899b400
        pfds = <optimized out>
#16 os_host_main_loop_wait (timeout=<optimized out>) at main-loop.c:232
        ret = 2
        spin_counter = 1
#17 main_loop_wait (nonblocking=<optimized out>) at main-loop.c:464
        ret = 2
        timeout = 4294967295
#18 0x00007f09b5a94f18 in main_loop () at vl.c:1986
        nonblocking = <optimized out>
        last_io = 1
#19 main (argc=<optimized out>, argv=<optimized out>, envp=<optimized out>) at vl.c:4343
        i = <optimized out>
        snapshot = 0
        linux_boot = 0
        icount_option = 0x0
        initrd_filename = 0x0
        kernel_filename = 0x0
        kernel_cmdline = 0x7f09b5d832c0 ""
        boot_order = 0x7f09b5d3dd46 "cad"
        ds = <optimized out>
        cyls = 0
        heads = 0
        secs = 0
        translation = 0
        hda_opts = <optimized out>
        opts = 0x7f09b8999830
        machine_opts = <optimized out>
        olist = <optimized out>
        optind = 65
        optarg = 0x7fff110777ed "stdio"
        loadvm = 0x0
        machine = 0x7f09b6109340 <pc_machine_rhel700>
        cpu_model = 0x7fff110771e7 "SandyBridge"
        vga_model = 0x7f09b5d665ff "cirrus"
        pid_file = 0x0
        incoming = 0x0
        show_vnc_port = 0
        defconfig = <optimized out>
        userconfig = 231
        log_mask = <optimized out>
        log_file = 0x0
        mem_trace = {malloc = 0x7f09b5bfef80 <malloc_and_trace>, realloc = 0x7f09b5bfef40 <realloc_and_trace>, 
          free = 0x7f09b5bfef00 <free_and_trace>, calloc = 0x0, try_malloc = 0x0, try_realloc = 0x0}
        trace_events = 0x0
        trace_file = 0x0
        __PRETTY_FUNCTION__ = "main"
        args = {machine = 0x7f09b6109340 <pc_machine_rhel700>, ram_size = 2147483648, 
          boot_device = 0x7f09b5d3dd46 "cad", kernel_filename = 0x0, kernel_cmdline = 0x7f09b5d832c0 "", 
          initrd_filename = 0x0, cpu_model = 0x7fff110771e7 "SandyBridge"}
(gdb)

Comment 28 Paolo Bonzini 2013-11-28 10:53:58 UTC
Patch posted at http://permalink.gmane.org/gmane.comp.emulators.qemu/243754

Comment 29 Cole Robinson 2013-12-18 19:59:20 UTC
Fixed in qemu-1.7.0-2.fc21