Date: Fri, 03 Jan 1997 11:01:27 -0800 From: Julian Elischer <julian@whistle.com> To: Joerg Wunsch <joerg_wunsch@uriah.heep.sax.de> Cc: freebsd-scsi@freebsd.org Subject: Re: Ideas on CD changers sought Message-ID: <32CD5787.59E2B600@whistle.com> References: <199701021747.SAA08128@uriah.heep.sax.de> <199701022154.QAA23215@hda.hda.com> <Mutt.19970103182309.j@uriah.heep.sax.de>
next in thread | previous in thread | raw e-mail | index | archive | help
J Wunsch wrote: > > As Peter Dufault wrote: > > > How about round robin scheduling the platters, maybe with hysteresis > > on platter switching? > > > > Add a "changer queue" that is a queue of CD start queues to schedule > > the changer resource. A changerstart routine can then round robin > > schedule across the active platters. > > Hmm, but that would require we start distinguish changers from regular > CD drives, right? > > Is there any way to learn about the medium changing ability other than > a hard-coded list of devices that are known to do it? if a CD is on an LUN other than 0 it should be assumed to be a CD changer, (same for a CHANGER device. the base device can be assumed to be LUN 0) on discovering this, it should be able to go to the device on LUN0 and retroactively set a special "COMPLICATED" :) bit. > > > Have changerstart schedule up to N transfers in a row for a given > > unit by calling a derivation of the existing cdstart. If N counts > > down take the CD start queue off and enqueue it again at the tail > > of the changer queue and move to the next CD start queue. You want > > to select N to be a number that gives you decent utilization, maybe > > enough transfers to take twice as long as the change mechanism. > > I think the medium change must even be artificially delayed for some > amount, ``just in case'' some future request for the same platter > arrives while it's swapped in. The swapin/swapout times are extremely > high (10 seconds), so it would IMHO justify to wait another 2 or 3 > seconds even on an empty queue. > > > You can still come up with loads that will thrash this. You could > > add hysteresis to the platter switching with a minimum-time-at-a-platter > > timeout. > > That's probably about the same as my thoughts above. > > -- > cheers, J"org > > joerg_wunsch@uriah.heep.sax.de -- http://www.sax.de/~joerg/ -- NIC: JW11-RIPE > Never trust an operating system you don't have sources for. ;-)
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?32CD5787.59E2B600>