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
_______________________________________________
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel