qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Don Slutz <Don@CloudSwitch.Com>
To: "qemu-devel@nongnu.org" <qemu-devel@nongnu.org>
Cc: Avi Kivity <avi@redhat.com>
Subject: [Qemu-devel] BUG: virtio-scsi-pci device causes SIGABRT on master 2592c59
Date: Fri, 9 Nov 2012 10:10:29 -0500	[thread overview]
Message-ID: <509D1CE5.1080509@CloudSwitch.Com> (raw)

Commit d22b096ef6e0b20810193b68a1d472f3fb8a4f9e is what I bisected to.

Using:

gdb --args ./x86_64-softmmu/qemu-system-x86_64 -machine pc,accel=kvm 
-name "test1" -serial pty -chardev stdio,id=seabio\
s -device isa-debugcon,iobase=0x402,chardev=seabios -m 1024 -monitor pty 
-monitor vc -device virtio-scsi-pci,id=scsi0 -\
drive if=none,id=disk0,file=/home/don/qemu-img/test1.raw -device 
scsi-disk,bus=scsi0.0,scsi-id=0,drive=disk0 -cdrom /ho\
me/don/isos/centos/x86_64/CentOS-6.3-x86_64-minimal.iso

dcs-xen-50:~/qemu>git-bisect good
Bisecting: 0 revisions left to test after this (roughly 1 step)
[12b40e471f33e552fa3d962887b416cf67831446] xen_pt: use separate 
MemoryListeners for memory and I/O
dcs-xen-50:~/qemu>git-bisect bad
Bisecting: 0 revisions left to test after this (roughly 0 steps)
[d22b096ef6e0b20810193b68a1d472f3fb8a4f9e] kvm: use separate 
MemoryListeners for memory and I/O
dcs-xen-50:~/qemu>git-bisect bad
d22b096ef6e0b20810193b68a1d472f3fb8a4f9e is the first bad commit
commit d22b096ef6e0b20810193b68a1d472f3fb8a4f9e
Author: Avi Kivity <avi@redhat.com>
Date:   Sun Sep 30 22:21:11 2012 +0200

     kvm: use separate MemoryListeners for memory and I/O

     The construct

        if (address_space == get_system_memory()) {
            // memory thing
        } else {
            // io thing
        }

     fails if we have more than two address spaces.  Use a separate listener
     for memory and I/O, and utilize MemoryListener's address space 
filtering to
     fix this.

     Signed-off-by: Avi Kivity <avi@redhat.com>

:100644 100644 92a71374ed1e040cef5ad70a6cb00adabf671dd4 
c69e01200461c7a87440f7a915bd171a9fc8f318 M      kvm-all.c


Searching bootorder for: /pci@i0cf8/*@4/*@0/*@255,0

Program received signal SIGABRT, Aborted.
[Switching to Thread 0x7fffef7d6700 (LWP 14635)]
0x00007ffff4c24925 in __GI_raise (sig=sig@entry=6)
     at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
64        return INLINE_SYSCALL (tgkill, 3, pid, selftid, sig);
Missing separate debuginfos, use: debuginfo-install 
libxcb-1.8.1-1.fc17.x86_64
(gdb) bt
#0  0x00007ffff4c24925 in __GI_raise (sig=sig@entry=6)
     at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
#1  0x00007ffff4c260d8 in __GI_abort () at abort.c:91
#2  0x0000555555862da1 in kvm_mem_ioeventfd_add (listener=0x555555cd97c0,
     section=0x7fffef7d57f0, match_data=true, data=0, e=0x55555660e8bc)
     at /home/don/qemu/kvm-all.c:775
#3  0x00005555558690f1 in address_space_add_del_ioeventfds 
(as=0x55555650bf60,
     fds_new=0x7fffe8000bf0, fds_new_nb=1, fds_old=0x0, fds_old_nb=0)
     at /home/don/qemu/memory.c:616
#4  0x000055555586944d in address_space_update_ioeventfds 
(as=0x55555650bf60)
     at /home/don/qemu/memory.c:649
#5  0x0000555555869fa3 in address_space_update_topology (as=0x55555650bf60)
     at /home/don/qemu/memory.c:730
#6  0x000055555586a0b7 in memory_region_transaction_commit ()
     at /home/don/qemu/memory.c:750
#7  0x000055555586bc35 in memory_region_add_eventfd (mr=0x55555660d0d8, 
addr=
     16, size=2, match_data=true, data=0, e=0x55555660e8bc)
     at /home/don/qemu/memory.c:1231
#8  0x0000555555736adf in virtio_pci_set_host_notifier_internal (proxy=
     0x55555660cb40, n=0, assign=true, set_handler=true)
     at /home/don/qemu/hw/virtio-pci.c:178
#9  0x0000555555736be1 in virtio_pci_start_ioeventfd (proxy=0x55555660cb40)
     at /home/don/qemu/hw/virtio-pci.c:204
---Type <return> to continue, or q <return> to quit---
#10 0x0000555555736f89 in virtio_ioport_write (opaque=0x55555660cb40, 
addr=18,
     val=7) at /home/don/qemu/hw/virtio-pci.c:295
#11 0x00005555557374b3 in virtio_pci_config_writeb (opaque=0x55555660cb40,
     addr=18, val=7) at /home/don/qemu/hw/virtio-pci.c:427
#12 0x0000555555868054 in memory_region_iorange_write 
(iorange=0x7fffe8000b20,
     offset=18, width=1, data=7) at /home/don/qemu/memory.c:431
#13 0x00005555558607cc in ioport_writeb_thunk (opaque=0x7fffe8000b20, addr=
     49234, data=7) at /home/don/qemu/ioport.c:212
#14 0x00005555558601a6 in ioport_write (index=0, address=49234, data=7)
     at /home/don/qemu/ioport.c:83
#15 0x0000555555860d46 in cpu_outb (addr=49234, val=7 '\a')
     at /home/don/qemu/ioport.c:289
#16 0x00005555558646b4 in kvm_handle_io (port=49234, data=0x7ffff7ff3000,
     direction=1, size=1, count=1) at /home/don/qemu/kvm-all.c:1451
#17 0x0000555555864c9b in kvm_cpu_exec (env=0x55555658d4e0)
     at /home/don/qemu/kvm-all.c:1597
#18 0x00005555557f1c31 in qemu_kvm_cpu_thread_fn (arg=0x55555658d4e0)
     at /home/don/qemu/cpus.c:753
#19 0x00007ffff604fd14 in start_thread (arg=0x7fffef7d6700)
     at pthread_create.c:309
#20 0x00007ffff4ce067d in clone ()
     at ../sysdeps/unix/sysv/linux/x86_64/clone.S:115
(gdb)

    -Don Slutz

                 reply	other threads:[~2012-11-09 15:10 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=509D1CE5.1080509@CloudSwitch.Com \
    --to=don@cloudswitch.com \
    --cc=avi@redhat.com \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).