Date: Fri, 9 Feb 2001 13:20:04 -0800 (PST) From: Rich Morin <rdm@cfcl.com> To: freebsd-doc@freebsd.org Subject: Re: docs/24786: missing FILES descriptions in sa(4) Message-ID: <200102092120.f19LK4w20665@freefall.freebsd.org>
index | next in thread | raw e-mail
The following reply was made to PR docs/24786; it has been noted by GNATS.
From: Rich Morin <rdm@cfcl.com>
To: Julian Elischer <julian@elischer.org>
Cc: Nik Clayton <nik@freebsd.org>, FreeBSD-gnats-submit@freebsd.org,
mjacob@freebsd.org
Subject: Re: docs/24786: missing FILES descriptions in sa(4)
Date: Fri, 9 Feb 2001 13:09:43 -0800
At 11:48 AM -0800 2/9/01, Julian Elischer wrote:
>I'm not sure if it's STILL true, but when I write it originally,
>the submodes were so that you could have a single device programmed
>up to use different block sizes and densities, and teh nyou could
>read/write tapes in those densities by just using the different
>subdevices.
>(e.g. .1 might write in 3K blocks and .2 might right in variable
>block mode) useful if you are distributing media to people with
>machines with different capabilities.
Well, that certainly isn't what the sa(4) man page says:
SUB-MODES
Bits 0 and 1 of the minor number are interpreted as `sub-modes'. The sub-
modes differ in the action taken when the device is closed:
00 A close will rewind the device; if the tape has been written, then
a file mark will be written before the rewind is requested. The
device is unmounted.
01 A close will leave the tape mounted. If the tape was written to, a
file mark will be written. No other head positioning takes place.
Any further reads or writes will occur directly after the last
read, or the written file mark.
10 A close will rewind the device. If the tape has been written, then
a file mark will be written before the rewind is requested. On
completion of the rewind an unload command will be issued. The de-
vice is unmounted.
FWIW, /usr/src/sys/cam/scsi/scsi_sa.c contains the code
typedef enum {
SA_MODE_REWIND = 0x00,
SA_MODE_NOREWIND = 0x01,
SA_MODE_OFFLINE = 0x02
} sa_mode;
...
#define SAMODE(z) ((minor(z) & 0x3))
...
#define SA_NUM_MODES 4
struct sa_devs {
dev_t ctl_dev;
struct sa_mode_devs {
dev_t r_dev;
dev_t nr_dev;
dev_t er_dev;
} mode_devs[SA_NUM_MODES];
dev_t r_dev;
dev_t nr_dev;
dev_t er_dev;
};
So, it _appears_ to me that the modes have been taken over to do the
same things as the [en] flags. If this is the case, this seems a bit
redundant. In any event, the true situation needs to be clarified.
-r
--
--
http://www.cfcl.com/rdm
email: rdm@cfcl.com
phone: +1 650-873-7841
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-doc" in the body of the message
help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200102092120.f19LK4w20665>
