On 11/02/2011 12:25 PM, Stefan Hajnoczi wrote:
Now i have two drives by one option.
xorriso -devices reports
0 -dev '/dev/sr0' rwrw-- : 'TSSTcorp' 'CDDVDW SH-S223B'
1 -dev '/dev/sr1' rwrw-- : 'QEMU ' 'QEMU DVD-ROM'
with /dev/sr1 being an empty drive. (Is this a known bug ?)
Off the top of my head I'd say this is an empty IDE CD-ROM drive which
is added by default. Would need to check the code to be sure though.
Yes, that's correct.
That empty IDE CD-ROM was the same that you were getting with
virtio-blk. With virtio-blk you get a /dev/vda drive that will respond
to SG_IO, so it doesn't look like a pass-through CD-ROM but it is one.
The window where i ran qemu says:
qemu: ./qemu_dir/qemu-0.15.1/hw/lsi53c895a.c:540:
lsi_do_dma: Assertion `s->current' failed.
That's a bug in the LSI SCSI HBA emulation or a generic SCSI emulation
problem in QEMU. I have CCed Paolo and Kevin who have recently been
working on SCSI and IDE much more than me and know more.
I suggest trying with 1.0-rc (origin/master). No guarantee that it
works, but definitely a lot of bugs have been fixed. It is also
possible that a few new ones were introduced. I can also provide an
updated version of my vmw_pvscsi device model, which is simpler and more
stable than the lsi device model.
Also, with 1.0-rc you can do passthrough in two ways: with scsi-generic
as you did, which always uses SG_IO, and with scsi-block. scsi-block
uses read+write for READ/WRITE CDBs and SG_IO for everything else. You
can define a scsi-block disk like this:
-drive file=/dev/sr0,if=none,id=hostcd -device scsi-block,drive=hostcd
The advantage of scsi-block is that it doesn't need a bounce buffer as
big as the whole request; in virtio-scsi it will not require a bounce
buffer at all. From the spec I don't understand how this will fail to
burn CDs. It's possible that some modes work and others don't. I
planned to test this on test day (Nov 7th).
Thanks for the extensive testing. I actually suggest focussing just
on qemu.git/master because that is where developers mostly invest
their time. The data points on older versions can be interesting but
my guess is folks won't have time to debug them - instead let's make
qemu.git/master work.
Agreed.
Paolo