CD Jukeboxes

Jakub Jelinek (
Fri, 31 Jan 1997 16:54:46 +0100 (MET)


Dunno if this was ever discussed before, but I'm wondering if it could be
useful to have some code in common scsi code, which would take care about
some devices with multiple luns.
There are many types of CD jukeboxes, some of those work pretty well when
two people are reading from two different luns at the same time, some of
them spent 90% of time just swapping the CDs and some of them with some HBAs
just crash when something like this happen (one example is some stupid NEC
7xCD with Adaptec 1510).
My idea is something (dunno in which layer, haven't yet looked at it), which
will for the devices someone selects e.g. through /proc/scsi, queue requests
for luns, if some other lun is currently being used. E.g. user could specify
two numbers in seconds, one how long at least not put any requests to other
luns once one request to a particular lun was issued and the other number
would be after how long force switching of luns if some other luns have
something in the queues. Like specifying 10 20 would mean, that one lun will
be exclusive at least 10 seconds and at most 20 seconds, if some request to
other lun is issued as well. By implementing this
a) such broken hw would never crash
b) even the correct hw would spent less time in switching the CDs
It would be nice to have some special cdcachefs, which would once read all
the inodes and directories from all the CDs, store them on some disk and
just go to CDs when data is requested from some file (cdcachefs would
contain direct offsets onto the CDs). This would help a lot for the task I'm
solving with this - multiple jukeboxes work as an extension for the ftp disk
space (where browsing the directories is the most common task).
Anyway, the cdcachefs stuff is easy and is not that urgent (if I have some
spare time, I can write it), but I'm wondering about your ideas about the
scsi stuff.
Cheers .$$$$$:S
Jakub $"*$/"*$$
$.`$ . ^F
-------------------------------------------------------------- 4P+++"$"$ ---
Jakub Jelinek, :R"+ t$$B
Administrator of SunSITE Czech Republic ___# $$$
MFF, Charles University, Prague | | R$$k
---------------------------------------------------------- dd. | Linux $!$
Give your Sparc a new beginning - SparcLinux ddd | Sparc $9$F
-------------------------------------------------------- '!!!!!$ !!#!`
!!!!!* .!!!!!`
"~^^~ ^~~^