qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] Do you have a use for a tester of virtio-scsi with CD d


From: Thomas Schmitt
Subject: Re: [Qemu-devel] Do you have a use for a tester of virtio-scsi with CD drives ?
Date: Wed, 02 Nov 2011 16:15:33 +0100

Hi,

Stefan Hajnoczi wrote:
> I actually suggest focussing just
> on qemu.git/master because that is where developers mostly invest
> their time.

I did now
  git clone git://git.qemu.org/qemu.git
  cd qemu && ./configure && make

I assume this binary is the right one for my "AMD Athlon(tm) II X4 620"
  ./x86_64-softmmu/qemu-system-x86_64
Together with
  -L ...absolute.path.../pc-bios
it still complains on startup
  Could not open option rom 'sgabios.bin': No such file or directory

I cannot spot a file sgabios.bin on the entire host machine by
  find / -name sgabios.bin 2>/dev/null

I repeated the experiments as on qemu-0.15.1. Same results.

If i shall do any further experiments, please give me direct
instructions. (I'm not much accustomed to qemu and git. Assume
that i know nothing beyond what i show here.)


In detail:
----------------------------------------------------------------------

Host system is Debian GNU/Linux 6.0.2 amd64:
  Linux ... 2.6.32-5-amd64 #1 SMP Tue Jun 14 09:42:28 UTC 2011 x86_64 GNU/Linux

qemu start command:

  ...absolute.path.../x86_64-softmmu/qemu-system-x86_64 \
     -L ...absolute.path.../pc-bios \
     -nographic \
     -m 512 \
     -net nic,model=ne2k_pci \
     -net user,hostfwd=tcp::5557-:22 \
     -hda /dvdbuffer/i386-install.qemu \
     -drive file=/dev/sg1,if=scsi,media=cdrom

I left out -enable-kvm for now, as i suspect it of causing the bad
effects on the host, which i experienced with qemu-0.12.5.

Guest system is Debian GNU/Linux 6.0.3 i386:
  Linux ... 2.6.32-5-686 #1 SMP Mon Oct 3 04:15:24 UTC 2011 i686

----------------------------------------------------------------------

Drive list as detected by xorriso:
  0  -dev '/dev/sr0' rwrw-- :  'TSSTcorp' 'CDDVDW SH-S223B' 
  1  -dev '/dev/sr1' rwrw-- :  'QEMU    ' 'QEMU DVD-ROM' 

Inspection:
  Drive type   : vendor 'TSSTcorp' product 'CDDVDW SH-S223B' revision 'SB02'
  Media current: CD-RW
  Media status : is written , is appendable
  Media summary: 1 session, 27783 data blocks, 54.3m data,  626m free

  Drive type   : vendor 'QEMU' product 'QEMU DVD-ROM' revision '0.15'
  Media current: is not recognizable
  Media status : is not present

The emptiness is indicated by GET CONFIGURATION showing no current
profile, and by sense code (2,3A,00) with TEST UNIT READY.
The Linux block device driver comes to the same conclusion:
  dd: opening `/dev/sr1': No medium found

----------------------------------------------------------------------

Burn attempt on CD-RW:
  xorriso -for_backup -scsi_log on -dev /dev/sr0 -add /usr/lib --
fails and leaves the CD-RW unchanged.
(With CD-RW, qemu does not abort as with DVD+RW.)

Undesirable SCSI transaction outcome with these commands:

  PREVENT/ALLOW MEDIA REMOVAL
  1e 00 00 00 01 00 
  +++ sense data = F0 00 0B 00 00 00 00 0A 00 00 00 00 00 06 00 00 00 00
  +++ key=B  asc=00h  ascq=06h   (     0 ms)

  MODE SELECT
  55 10 00 00 00 00 00 00 3c 00 
  To drive: 60b
  00 00 00 00 00 00 00 00 05 32 01 00 00 00 00 00 00 00 00 00
  00 00 00 96 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
  +++ sense data = F0 00 0B 00 00 00 00 0A 00 00 00 00 00 06 00 00 00 00
  +++ key=B  asc=00h  ascq=06h   (     0 ms)

  SET CD SPEED
  bb 00 ff ff 06 e4 00 00 00 00 00 00 
  +++ sense data = F0 00 0B 00 00 00 00 0A 00 00 00 00 00 06 00 00 00 00
  +++ key=B  asc=00h  ascq=06h   (     0 ms)

  WRITE(10)
  2a 00 00 00 99 0f 00 00 10 00 
  +++ sense data = F0 00 0B 00 00 00 00 0A 00 00 00 00 00 06 00 00 00 00
  +++ key=B  asc=00h  ascq=06h   (     4 ms)
(This tried to send 32 kB of data to block 39183 decimal, where the
 new track has to start.)

  SYNCHRONIZE CACHE
  35 02 00 00 00 00 00 00 00 00 
  +++ sense data = F0 00 0B 00 00 00 00 0A 00 00 00 00 00 06 00 00 00 00
  +++ key=B  asc=00h  ascq=06h   (     0 ms)

  CLOSE TRACK/SESSION
  5b 01 02 00 00 00 00 00 00 00 
  +++ sense data = F0 00 0B 00 00 00 00 0A 00 00 00 00 00 06 00 00 00 00
  +++ key=B  asc=00h  ascq=06h   (     0 ms)

The sense code is listed in MMC as:
  B 00 06 I/O PROCESS TERMINATED

----------------------------------------------------------------------

Now with DVD+RW rather than CD-RW:

The attempt to learn about the medium causes two timeouts after 200
seconds each. (I should reduce the time for these experiments.)
  xorriso -scsi_log on -dev /dev/sr0 -toc

has timeouts with
  READ DISC STRUCTURE
  ad 00 00 00 00 00 00 04 00 04 00 00 
and
  READ DISC STRUCTURE
  ad 00 00 00 00 00 00 11 00 04 00 00 
but not with
  READ DISC STRUCTURE
  ad 00 00 00 00 00 00 00 00 04 00 00 
  From drive: 4b
  08 02 00 00 

----------------------------------------------------------------------

Burn attempt with DVD+RW:
  xorriso -for_backup -scsi_log on -dev /dev/sr0 -add /usr/lib --

with undesirable outcome of

  PREVENT/ALLOW MEDIA REMOVAL
  1e 00 00 00 01 00 
  +++ sense data = F0 00 0B 00 00 00 00 0A 00 00 00 00 00 06 00 00 00 00
  +++ key=B  asc=00h  ascq=06h   (     0 ms)

  SET STREAMING
  b6 00 00 00 00 00 00 00 Connection to localhost closed by remote host.
  Connection to localhost closed.

The qemu start terminal reports
  qemu-system-x86_64: ...absolute.address.../hw/lsi53c895a.c:537:
                      lsi_do_dma: Assertion `s->current' failed.
and the qemu run has aborted.

----------------------------------------------------------------------

The xorriso program is from the current development tarball (2 MB)
  http://scdbackup.sourceforge.net/xorriso-1.1.7.tar.gz
Buildable by
  tar xzf xorriso-1.1.7.tar.gz
  cd xorriso-1.1.7
  ./configure && make
Executable without installation as
  xorriso/xorriso
Tree size after build is about 20 MB.

See also file ./README
  http://www.gnu.org/s/xorriso/README_xorriso_devel
and man xorriso/xorriso.1
  http://www.gnu.org/s/xorriso/man_1_xorriso_devel.html
as well as the home page
  http://www.gnu.org/s/xorriso

The current release 1.1.6 will not recognize QEMU DVD-ROM because
of its inconsistent Mode Page 2Ah with short Page Length (18 decimal).

----------------------------------------------------------------------
About the non-passthrough QEMU DVD-ROM :

i wrote:
> >   -drive file=/dev/sg2,if=scsi,bus=4,unit=0,media=cdrom
> > Now i have two drives by one option [...]
> > 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 ?)

Stefan Hajnoczi wrote:
> 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.

Actually i meant:
Is it a known bug that 'QEMU DVD-ROM' is always empty if it stems
from option -drive if=scsi ?
I experience this effect with file=/dev/sr1 as well as with a regular
file as CD drive image. The drive has a medium, if stemming from
option -cdrom.

The fact that 'QEMU DVD-ROM' from file=/dev/sg2,if=scsi behaves like
the drives from the other file=...,if=scsi makes me think that it is
an emulated SCSI drive.

GET CONFIGURATION could tell, if it would deliver feature 0x01.
The 'CDDVDW SH-S223B' reports Physical Interface 7 = "Serial ATAPI".
But the 'QEMU DVD-ROM' does not report feature 0x01.

----------------------------------------------------------------------

Have a nice day :)

Thomas




reply via email to

[Prev in Thread] Current Thread [Next in Thread]