Date: Tue, 15 Dec 1998 22:56:14 -0800 (PST) From: Matthew Jacob <mjacob@feral.com> To: Julian Elischer <julian@whistle.com> Cc: freebsd-current@FreeBSD.ORG Subject: Re: Tape Driver Changes Proposed: Variable Mode as default Message-ID: <Pine.LNX.4.04.9812152246290.9552-100000@feral-gw> In-Reply-To: <36773AFE.4487EB71@whistle.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Yes- I saw this code. In fact, it was someone's comment about the behaviour changing post-CAM that got me to thinking about this again. What's actually happening now is that whatever the drive shows up as is what it starts as. There are variant behaviours, for example, for different f/w versions of Exabyte f/w that have it show up in fixed or variable mode. When I did the tape driver for Sun, I also used type && and tried to infer from density code if I didn't know the type by name to set things like ST_REEL or ST_QIC, etc.. the trouble is that w/o media inserted, or a lot of the rest of the time you only get 'default' density reported. So rather than having to enumerate all known drives as to whether they should come up in fixed or variable, it seems to me that a slightly more agressive leaning toward a default behaviour (variable) seemes appropriate now. In the current prototype, btw., if the guessed choice fails (e..g, attempting to set variable for an Archive Viper (QIC-24(read)/QIC-120/QIC-150)), the driver will flip back to the other. Yes, as in your original code, there should be both QUIRK_VARIABLE and QUIRK_FIXED. And, also like your original I believe, you set variable/blocksize as well as density and compression at tape mount time (since you can't change these things past BOT (usually) anyway)). Insofar as the subdevices go- I lean multiple ways on this. Thanks for responding, Julian- it's good perspective to see what's been done before here. -matt On Tue, 15 Dec 1998, Julian Elischer wrote: > Matthew Jacob wrote: > > > > I'm still processing and munching on the responses from the last call on > > this- but closure is pretty close- in the interim, here's one that should > > be less controversial: > > > > + forcing variable mode for tape devices unless quirked otherwise > > > > Do people have an opinion on this? > > In my original tape driver the default was not fixed, but rather, > depended on a heuristic.. > > Most formats (e.g. QIC) in those days used a fixed mode, though > variable mode was becoming more common. (as it had been originally > in the 1/2 inch days) > > If you look in st.c (in 2.2) you should still see > the heuristic code that decides which is the most likely default > to use. Certainly it depended on the reported format of the drive. > > Ultimatly if there is a quirk for the drive you allow that to over-ride > the default and a user can over-ride the quirk. > > You should ask the drive immediatly when asked to set a density, > and return an error if the drive is not co-operative. > > I selected 4 sub devices for the tape driver to allow 4 > easily available preselected modes and formats. I found this a great > thing when presented with a drive that could do several formats > or densities. I just used different subdevices to write the density > I required. > > I presume you have looked at st.c in the old scsi system. > To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.LNX.4.04.9812152246290.9552-100000>