From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1ERU9e-0006ws-Gp for qemu-devel@nongnu.org; Mon, 17 Oct 2005 08:31:50 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1ERU9c-0006vm-0f for qemu-devel@nongnu.org; Mon, 17 Oct 2005 08:31:49 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1ERU9b-0006vZ-Bf for qemu-devel@nongnu.org; Mon, 17 Oct 2005 08:31:47 -0400 Received: from [206.46.252.44] (helo=vms044pub.verizon.net) by monty-python.gnu.org with esmtp (Exim 4.34) id 1ERU9b-00044z-Cn for qemu-devel@nongnu.org; Mon, 17 Oct 2005 08:31:47 -0400 Received: from [192.168.0.100] ([151.203.226.127]) by vms044.mailsrvcs.net (Sun Java System Messaging Server 6.2 HotFix 0.04 (built Dec 24 2004)) with ESMTPA id <0IOI008FO84XU620@vms044.mailsrvcs.net> for qemu-devel@nongnu.org; Mon, 17 Oct 2005 07:31:46 -0500 (CDT) Date: Mon, 17 Oct 2005 08:31:07 -0400 From: John Coiner Subject: Re: [Qemu-devel] "Issue" With non-blocking IO patch In-reply-to: <4353909B.3040109@wasp.net.au> Message-id: <4353998B.5060602@stanfordalumni.org> MIME-version: 1.0 Content-type: text/plain; charset=us-ascii; format=flowed Content-transfer-encoding: 7bit References: <4353909B.3040109@wasp.net.au> Reply-To: qemu-devel@nongnu.org List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org I can't reproduce this. Please check two things: 1. In "block.c", the first two lines of the "bdrv_cancel_nonblock_io" function should read: if( bs->nbst.booted && bs->nbst.state != STATE_IDLE ) { There was a bugfix here, in the most recent version of the patch, and if you didn't have the bugfix, you'd get the error you're getting. 2. If that looks OK, try rebuilding from "make clean". The nonblocking IO patch modifies a header file, "block_int.h", and the Makefile doesn't force recompilation on all consumers of this file. This has caused a problem once before. Rebuilding from "make clean" rules out any problem caused by missing Makefile dependencies. Let me know if neither of these solves it, and I'll keep trying to reproduce this. Thank you. -- John Brad Campbell wrote: > G'day all, > > Have discovered a minor hitch with the non-blocking IO patch. > when changing cdrom devices in the console it dies with > > qemu: /home/brad/src/qemu/block.c:425: bdrv_cancel_nonblock_io: > Assertion `nbst->state == STATE_READ_DONE' failed. > Aborted > > I start qemu with qemu -hda test.img -cdrom test.iso > ctrl-alt 2 to change to virtual console > issue a "change cdrom /dev/sr0" > and the above happens. It does not seem to matter from<->to what I am > changing the device. > > I'm using a latest CVS version with the dma/nonblocking IO patch added > only. > > Other than that, it seems to tick along quite fine. I have been using it > for days on end now and the other bonus the non-blocking patch seems to > have is qemu when running windows seems to keep better time. Prior to > this patch the clock drift was horrid. I had to install an ntp daemon in > windows to keep it synced to the host, now it's nowhere near as bad. > It would also appear that the non-blocking patch helps the "stalling" > problem, where long installs or tasks would appear to stall until I > moved the mouse or sent a packet over the network. But this is hard to > prove, just feels better. > > > Regards, > Brad