Date: Mon, 9 Mar 2009 19:02:49 +0100 (CET) From: Juergen Lock <nox@jelal.kn-bremen.de> To: gary.jennejohn@freenet.de Cc: freebsd-emulation@FreeBSD.org, Doug Barton <dougb@FreeBSD.org> Subject: Re: qemu 0.10.0 - cd/dvd drive access problems Message-ID: <200903091802.n29I2nYK004571@saturn.kn-bremen.de> In-Reply-To: <20090309103706.0a44fb26@ernst.jennejohn.org> References: <49B46A29.7020500@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
In article <20090309103706.0a44fb26@ernst.jennejohn.org> you write: >On Sun, 08 Mar 2009 18:00:25 -0700 >Doug Barton <dougb@FreeBSD.org> wrote: > >> One of my main reasons for wanting to install qemu was to be able to >> use Windows tools for things like archiving DVDs. Now that I have qemu >> working pretty well for most things, I tried to start using it for >> DVD/CD access and it's not working well at all. I installed XP via a >> typical installation CD, so I thought I had it made in this area. :( >> >> I'm using '-cdrom /dev/acd0' the same way I did for the install. If >> there is a disc in the drive when I start qemu I can "see" the disc, >> and copy some small files from it. However trying to copy/read large >> files (say, 1G) doesn't work at all. I get an error saying that sector >> of the disc cannot be read (this is with known-good discs). Hmm. I wonder if this bug is related to the opensuse installer segfault, have you tried with the (now older, still at the 20080620 snapshot) qemu-devel port thats in the tree? You could also try the new "werror" option for -drive (possible values are: report - report errors to a guest as IO errors ignore - continue as if nothing happened stop - stop VM on any error and retry last command on resume enospc - stop vm on ENOSPC error and retry last command on resume all other errors are reported to a guest. I think the default is "enospc" in 0.10.0 . Yeah -cdrom is readonly but who knows...) And finally you could try disabling aio (untested, I hope the following still works:) Index: Makefile @@ -47,7 +47,7 @@ WITHOUT_CPU_CFLAGS=yes #to avoid problems with register allocation CFLAGS:= ${CFLAGS:C/-fno-tree-vrp//} -CONFIGURE_ARGS+= --prefix=${PREFIX} --cc=${CC} +CONFIGURE_ARGS+= --prefix=${PREFIX} --cc=${CC} --disable-aio .if defined(WITHOUT_SDL) CONFIGURE_ARGS+= --disable-sdl --disable-gfx-check >> I tried >> with and without the cd-rom DMA compile-time OPTION, no luck. If I >> remove the disc from the drive, or if there is no disc in the drive >> when I start qemu, inserting one after it starts produces no results. >> Every time I try to access the drive I get the "Please insert a disc >> into drive D:" error message. >> Try using the `change' monitor command (`change ide1-cd0 /dev/acd0' in this case.) Also with Windows guests istr people having to click `eject' in the guest too before it would recognize a new disc. >> I'm using a fairly up to date 8-current as the host, btw. >> >> >> Any suggestions? >> > >Do you have vfs_aio in your kernel or as a module? Actually qemu 0.10.0 (and also the last few snapshots I posted updates for) now does its own aio emulation using threads, so the aio(4) kld or kernel option is no longer needed. > I've run openSUSE >in qemu and used the DVD drive with no problems at all; I have vfs_aio >in my kernel. However, I don't know how much data were transfered by >openSUSE. Since I was merely loading packages from the DVD it may have >been only a few MB. > >One thing I've noticed is that the DVD drive is locked and I can't open >the drawer once qemu starts, even if there is no disc in the drive. >Apparently openSUSE acceses the drive (i.e. locks it) even when it's >empty. > Hmm I haven't seen that here... Maybe -current locks the door when the /dev/acd0 device node is open now too, instead of only when its mounted like its here. Good luck, Juergen
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200903091802.n29I2nYK004571>