xref: /original-bsd/share/man/man4/man4.tahoe/vd.4 (revision c3e32dec)
1.\" Copyright (c) 1986, 1991, 1993
2.\"	The Regents of the University of California.  All rights reserved.
3.\"
4.\" %sccs.include.redist.man%
5.\"
6.\"     @(#)vd.4	8.1 (Berkeley) 06/05/93
7.\"
8.Dd
9.Dt VD 4 tahoe
10.Os
11.Sh NAME
12.Nm vd
13.Nd
14.Tn VERSAbus
15storage module controller/drives
16.Sh SYNOPSIS
17.Cd "controller vd0 at vba? csr 0xffff2000 vector vdintr"
18.Cd "disk dk0 at vd0 drive 0"
19.Sh DESCRIPTION
20This is a generic
21.Tn VERSAbus
22storage module disk driver for the
23Computer Consoles
24.Tn SMD
25.Pq Tn VDDC
26and
27.Tn SMD-E
28disk controllers.
29.Pp
30The
31.Nm vd
32driver is a fairly typical block
33.Tn I/O
34device, except
35raw block
36.Tn I/O
37counts must be a multiple of 1024 bytes,
38whether the actual sector size is 512 or 1024 bytes.
39Likewise,
40.Xr seek
41calls should specify a multiple of 1024 bytes.
42See
43.Xr physio 4 .
44.Pp
45The first sector of each disk contains a disk label
46containing geometry information and partition layouts (see
47.Xr disklabel 5 ) .
48This sector is normally write-protected, and disk-to-disk copies should
49avoid copying this sector.
50The label may be updated with
51.Xr disklabel 8 ,
52which can also be used to write-enable and write-disable the sector.
53.Sh DISK SUPPORT
54During autoconfiguration,
55as well as when a drive is opened after all partitions are closed,
56the first sector of the drive is examined for a disk label.
57If a label is found, the geometry of the drive and the partition tables
58are taken from it.
59If no label is found,
60The driver checks for a disk label on sector 0 of each drive
61during autoconfiguration.
62If no label is found,
63the driver tries to access the last track on each drive
64to determine the type of drive attached.
65The driver has default partition tables for
66seven different drives:
67.Tn CDC FSD
68(160
69.Tn MB ) ,
70.Tn CDC
719766 (300
72.Tn MB ) ,
73.Tn CDC XFSD
74(340
75.Tn MB ) ,
76.Tn CDC
77515
78.Tn MB ,
79Fujitsu 360
80.Tn MB ,
81Fujitsu Eagle (440
82.Tn MB ) ,
83and Maxtor 340
84.Tn MB .
85If the drive is not recognized, a single small partition is created
86to allow a label to be written.
87.Pp
88The partition tables in the disk label and the
89.Pa disktab
90file specify partition offsets and sizes in sectors, which are 512 bytes
91on
92.Tn SMD
93drives and 1024 bytes on 5 1/4"
94.Tn ESDI
95drives.
96By convention,
97the ?a partition is normally used for the root file system or other small
98file system,
99and the ?b partition is used as a paging area.
100The ?c partition maps the rest of the pack,
101except the last 5 cylinders which are reserved for bad sector forwarding,
102and diagnostic use.
103.Sh FILES
104.Bl -tag -width /dev/dk[0-7][a-f]xx -compact
105.It Pa /dev/dk[0-7][a-f]
106dk block files
107.It Pa /dev/rdk[0-7][a-f]
108dk raw files
109.El
110.Sh DIAGNOSTICS
111.Bl -diag
112.It vd%d: %s controller.
113This message is printed during autoconfiguration to identify
114the type of controller, either
115.Tn VDDC
116or
117.Tn SMDE .
118.Pp
119.It vd%d: init error.
120During autoconfiguration the controller failed to respond to
121an initialize command.
122.Pp
123.It vd%d: diagnostic error.
124During autoconfiguration the controller failed  to respond to
125a diagnostic command.
126.Pp
127.It dk%d: unknown drive type.
128The system was unable to identify the specified drive as
129one of the drives described above; the drive will not be
130configured.
131.Pp
132.It vd%d: drive %d: config error.
133The system encountered a hard error when it tried to configure
134a drive during autoconfiguration.
135.Pp
136.It vd%d: starting drives, wait ... .
137This message indicates the system is about to tell the
138controller to ``start'' the drives attached to  it.
139.Pp
140.It dk%d: %s <ntrak %d, ncyl %d, nsec %d>.
141For each drive recognized during autoconfiguration the system
142prints a message of this form.  The drive type is displayed
143as well as the geometry: tracks/cylinder, cylinders, and sectors/track.
144.Pp
145.It vd%d: lost interrupt.
146The system failed to receive an interrupt from the controller after
147submitting a request.
148The system attempts to abort the current request and simulate an
149interrupt to unwedge the controller.
150During processing of the simulated interrupt, a controller error
151will be reported as described below.
152.Pp
153.It vd%d: stray interrupt.
154The system received an unexpected interrupt; it is ignored.
155.Pp
156.It dk%d%c: write locked.
157An attempt was made to write to a drive that is physically write-protected.
158.Pp
159.It "dk%d%c: controller err %sing fsbn %d [of %d-%d] (dk%d bn %d cn %d tn %d sn %d) status %b ecode %x; resetting controller... retrying."
160.br
161.It "dk%d%c: drive err %sing fsbn %d [of %d-%d] (dk%d bn %d cn %d tn %d sn %d) status %b ecode %x; resetting drive... retrying."
162An attempted transfer resulted in a controller or drive error.
163The controller or drive is reset, and the transfer is attempted
164a second time.
165.Pp
166.It "dk%d%c: hard error %sing fsbn %d [of %d-%d] (dk%d bn %d cn %d tn %d sn %d) status %b ecode %x."
167An unrecoverable error was encountered.  The filesystem block number reported
168is a logical sector number on the indicated partition;
169it is expressed using 1024-byte sectors.
170If the transfer involved multiple blocks, the block range is printed as well.
171The parenthesized fields list the actual disk sector number
172relative to the beginning of the drive
173(in 512- or 1024-byte blocks, as appropriate),
174as well as the cylinder, track and sector number of the block.
175The error status field of the device control
176block is printed in hexadecimal followed by a symbolic description.
177If this is an
178.Tn SMDE
179controller, the error code is also displayed.
180.Pp
181.It "dk%d%c: soft error %sing fsbn %d [of %d-%d] (dk%d bn %d cn %d tn %d sn %d) status %b ecode %x."
182A recoverable error was detected by the controller.
183The fields are interpreted in the same way as those for hard errors.
184.Pp
185.It "dk%d%c: soft ecc %sing fsbn %d [of %d-%d] (dk%d bn %d cn %d tn %d sn %d)."
186A recoverable
187.Tn ECC
188error was detected and corrected by the controller
189during the indicated transfer.
190.Pp
191.It vd%d: drive %d: couldn't reset.
192The system was unable to reconfigure a drive during a controller reset.
193.Pp
194.It vd%d: controller timeout.
195The controller failed to complete an operation within a reasonable
196time.  This message is usually followed by another message indicating
197what operation timed out; e.g. ``during config'' for a configuration
198command.
199.El
200.Sh SEE ALSO
201.Xr disklabel 5 ,
202.Xr disklabel 8
203.Sh HISTORY
204The
205.Nm
206driver appeared in
207.Bx 4.3 tahoe .
208.Sh BUGS
209Writes
210scribble on the tail of incomplete blocks.
211.Pp
212The system should use real disk sector numbers internally,
213instead of assuming 1024-byte sectors;
214errors should report filesystem block numbers using the actual sector size.
215Raw
216.Tn I/O
217should be permitted on any sector boundary.
218