ide-scsi problems with multiple CD-Rs on same channel (2.2.14)

Tkil tkil en scrye.com
Mie Ene 26 21:44:50 CST 2000


[my apologies if anyone gets this message twice, i had minor firewall
difficulties on the first try]

>>>>> "Gadi" == Gadi Oxman <gadio en netvision.net.il> writes:

Gadi> [...] To verify that the above isn't indeed the case, I'd
Gadi> recommend mounting several cd's simultaneously and reading from
Gadi> all of them through ide-scsi, rather than writing a CD-R. This
Gadi> will move the real-time issues from the picture and will allow
Gadi> us to see whether the commands are redirected to incorrect
Gadi> drives.

I can successfully 'dd' off all three drives simultaneously.

Gadi> [...] If I understand the setup correctly, we have:

Gadi> 	- hda as the source which contains the image to be burned.
Gadi> 	- hdb, hdc and hdd as the cd-r writers.

Yes, this is precisely correct.  hda is a Quantum Bigfoot 6.4GB drive;
the only reason I mention this is because these are known to be slow,
which may or may not be causing problems elsewhere.

Anyway, a single dd off just one drive gives me:

| # time dd if=/dev/scd0 of=/dev/null bs=2048 count=32768
| 32768+0 records in
| 32768+0 records out
| 0.09user 2.25system 1:05.99elapsed 3%CPU (0avgtext+0avgdata 0maxresident)k
| 0inputs+0outputs (160major+33minor)pagefaults 16swaps

Doing the same command for all of scd[012] simultaneously returns
similar or identical results for all three reads.  I did notice an
interesting behavior pattern; let me see if I can relate it
reasonably.  Here, drive "B" is the CD-RW that is physically connected
to hdb (IDE0 Slave); "C" and "D" are likewise hdc and hdd, IDE1 Master
and Slave, respectively.

(1) Start 'dd' off /dev/scd0.  The drive light on "B" blinks a few
    times, then goes to steady green (meaning, "reading data").

(2) Start 'dd' on /dev/scd1.  Drive light on "C" blinks a few times,
    then goes to steady green.

(3) Start 'dd' on /dev/scd2.  Drive light on "D" blinks a few times.
    During this blinking drive light on "C" goes back to amber
    (meaning "disk loaded, idle").  After a few blinks, "D" goes to
    full green; a few seconds later, "C" goes back to full green.

So it looks like "normal" operations (just reading data) can proceed
at full speed from both C and D, even if they are on the same bus.  It
looks like the setup for each read might block that channel long
enought to cause problems, though.

Gadi> [...] Another test to try is to generally increase performance
Gadi> by switching all capable drives to DMA operation:

Gadi> 	hdparm -d1 /dev/hdx for all IDE drives, including the CD-R's.

Doing "hdparm" on each drive by itself is telling me that "using_dma"
is one:  

| /dev/hdd:
|  HDIO_GET_MULTCOUNT failed: Input/output error
|  I/O support  =  0 (default 16-bit)
|  unmaskirq    =  0 (off)
|  using_dma    =  1 (on)
|  keepsettings =  0 (off)
|  HDIO_GET_NOWERR failed: Input/output error
|  readonly     =  0 (off)
|  BLKRAGET failed: Input/output error
|  HDIO_GETGEO failed: Invalid argument

Or would the ide-scsi module be masking some of this?  Cute: removing
the ide-scsi module (along with its friends sg, sr_mod, cdrom, and
scsi_mod) causes "hdparm /dev/hdd" to fail with "/dev/hdd: Device not
configured".  So much for that idea.

Anyway, it looks like the drives are already being switched to DMA by
something (whether it's the BIOS or ide-scsi or something else, I'm
not sure).

I will apply your patches and reboot in a few moments.  Actually, I
suppose I could be brave and just install the new modules, eh?  No,
not feeling that brave today...

Thanks,
t.

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo en vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/



Más información sobre la lista de distribución Ayuda