From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:59653) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SudSe-0001qD-5m for qemu-devel@nongnu.org; Fri, 27 Jul 2012 01:51:41 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1SudSa-0001KK-3C for qemu-devel@nongnu.org; Fri, 27 Jul 2012 01:51:40 -0400 Received: from mail-wi0-f181.google.com ([209.85.212.181]:63249) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SudSZ-0001K9-Od for qemu-devel@nongnu.org; Fri, 27 Jul 2012 01:51:36 -0400 Received: by wibhm2 with SMTP id hm2so1946608wib.10 for ; Thu, 26 Jul 2012 22:51:34 -0700 (PDT) Sender: Paolo Bonzini Message-ID: <50122C61.4050200@redhat.com> Date: Fri, 27 Jul 2012 07:51:29 +0200 From: Paolo Bonzini MIME-Version: 1.0 References: In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] Qemu crashed with lsi booting List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Frediano Ziglio Cc: Paul Brook , Kevin O'Connor , qemu-devel , Gerd Hoffmann Il 26/07/2012 10:31, Frediano Ziglio ha scritto: > sudo ./x86_64-softmmu/qemu-system-x86_64 -m 1024 -hda test.qcow > -device lsi -drive file=/dev/sdb,if=none,id=XXX -device > scsi-block,drive=XXX -enable-kvm -bios ~/seabios/out/bios.bin -serial > file:out.txt > lsi_scsi: error: Multiple IO pending for request 0x7fd1075bf100 > qemu-system-x86_64: /home/fredianoz/qemu/hw/lsi53c895a.c:774: > lsi_do_command: Assertion `s->current == ((void *)0)' failed. > > (sometimes I don't get the "Multiple IO ending" line). > > I'm using a recent SeaBIOS which support booting from LSI SCSI. > > Qemu version > > $ git branch -v > * master 61dc008 Revert "audio: Make PC speaker audio card available by default" > > I'm using SeaBIOS commit 9d6bac1d32b72cdf7c0ad009c1371a2e69084de3 > (some minor changes in order to support 4k sectors). Can you share them? 4k sectors are not supported by BIOS at all AFAIK... Does virtio-scsi work with those changes? > Adding some debugging to SeaBIOS lsi code seems that drivers send > initial INQUIRY request but after that all requests have some problems > and lead to a lot of reset command. Can you gather tracing output for the following events: scsi_req_data scsi_req_dequeue scsi_req_parsed scsi_req_parse_bad scsi_req_build_sense scsi_inquiry scsi_test_unit_ready (Perhaps you can also instrument scsi_req_cancel for tracing). The timing doesn't matter, so you can use the stderr backend: --enable-trace-backend=stderr Place the above list in a file (one tracepoint per line) and then start QEMU with -trace events=/path/to/file.txt. You could also try github.com/bonzini/qemu.git, branch scsi-next (it shouldn't fix anything, but I added a couple more assertions). Paolo