.\" $NetBSD: hk.4,v 1.18 2017/08/01 11:11:17 wiz Exp $
.\"
.\" Copyright (c) 1980, 1991, 1993
.\" The Regents of the University of California. All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
.\" are met:
.\" 1. Redistributions of source code must retain the above copyright
.\" notice, this list of conditions and the following disclaimer.
.\" 2. Redistributions in binary form must reproduce the above copyright
.\" notice, this list of conditions and the following disclaimer in the
.\" documentation and/or other materials provided with the distribution.
.\" 3. Neither the name of the University nor the names of its contributors
.\" may be used to endorse or promote products derived from this software
.\" without specific prior written permission.
.\"
.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\" from: @(#)hk.4 8.1 (Berkeley) 6/5/93
.\"
.Dd February 17, 2017
.Dt HK 4 vax
.Os
.Sh NAME
.Nm hk
.Nd
.Tn RK6-11 Ns / Tn RK06
and
.Tn RK07
disk interface
.Sh SYNOPSIS
.Cd "hk0 at uba? csr 0177440 vector rkintr"
.Cd "rk0 at hk0 drive 0"
.Sh DESCRIPTION
NOTE: This driver has not been ported from
.Bx 4.4
yet.
.Pp
The
.Nm hk
driver
is a typical block-device disk driver; block device
.Tn I/O
is
described in
.Xr physio 4 .
.Pp
The script
.Xr MAKEDEV 8
should be used to create the special files; if a special file
needs to be created by hand consult
.Xr mknod 8 .
.Sh DISK SUPPORT
Special file names begin with
.Sq Li hk
and
.Sq Li rhk
for the block and character files respectively.
The second component of the name, a drive unit number in the range
of zero to seven, is represented by a
.Sq Li \&?
in the disk layouts below.
The last component is the file system partition which is designated
by a letter from
.Sq Li a
to
.Sq Li h .
and
corresponds to a minor device number set: zero to seven,
eight to 15, 16 to 23 and so forth for drive zero, drive two and drive
three respectively.
The location and size (in sectors) of the
partitions for the
.Tn RK06
and
.Tn RK07
drives are as follows:
.Bl -hang
.It Tn RK07 No partitions
.Bl -column diskx undefined length "xxx-yyyy" -compact
.It Sy disk start length cyl
.It hk?a 0 15884 0-240
.It hk?b 15906 10032 241-392
.It hk?c 0 53790 0-814
.It hk?d 25938 15884 393-633
.It hk?f 41844 11792 634-814
.It hk?g 25938 27786 393-813
.El
.It Tn RK06 No partitions
.Bl -column diskx undefined length "xxx-yyyy" -compact
.It Sy disk start length cyl
.It hk?a 0 15884 0-240
.It hk?b 15906 11154 241-409
.It hk?c 0 27126 0-410
.El
.El
.Pp
On a dual
.Tn RK-07
system
partition hk?a is used
for the root for one drive
and partition hk?g for the /usr file system.
If large jobs are to be run using
hk?b on both drives as swap area provides a 10Mbyte paging area.
Otherwise
partition hk?c on the other drive
is used as a single large file system.
.Sh FILES
.Bl -tag -width /dev/rhk[0-7][a-h] -compact
.It Pa /dev/hk[0-7][a-h]
block files
.It Pa /dev/rhk[0-7][a-h]
raw files
.El
.Sh DIAGNOSTICS
.Bl -diag
.It "hk%d%c: hard error %sing fsbn %d[-%d] cs2=%b ds=%b er=%b."
An unrecoverable error occurred during transfer of the specified
filesystem block number(s),
which are logical block numbers on the indicated partition.
The contents of the cs2, ds and er registers are printed
in octal and symbolically with bits decoded.
The error was either unrecoverable, or a large number of retry attempts
(including offset positioning and drive recalibration) could not
recover the error.
.It rk%d: write locked.
The write protect switch was set on the drive
when a write was attempted.
The write operation is not recoverable.
.It rk%d: not ready.
The drive was spun down or off line when it was
accessed.
The I/O operation is not recoverable.
.It rk%d: not ready (came back!).
The drive was not ready, but after
printing the message about being not ready (which takes a fraction
of a second) was ready.
The operation is recovered if no further errors occur.
.It rk%d%c: soft ecc reading fsbn %d[-%d].
A recoverable
.Tn ECC
error occurred on the
specified sector(s) in the specified disk partition.
This happens normally
a few times a week.
If it happens more frequently than this the sectors where the errors
are occurring should be checked to see if certain cylinders on the
pack, spots on the carriage of the drive or heads are indicated.
.It hk%d: lost interrupt.
A timer watching the controller detected
no interrupt for an extended period while an operation was outstanding.
This indicates a hardware or software failure.
There is currently a hardware/software problem with spinning down
drives while they are being accessed which causes this error to
occur.
The error causes a
.Tn UNIBUS
reset, and retry of the pending operations.
If the controller continues to lose interrupts, this error will recur
a few seconds later.
.El
.Sh SEE ALSO
.Xr vax/hp 4 ,
.Xr vax/uda 4 ,
.Xr vax/up 4 ,
.Xr syslogd 8
.Sh HISTORY
The
.Nm
driver appeared in
.Bx 4.1 .
.Sh BUGS
The
.Xr write 2
function
scribbles on the tail of incomplete blocks.
.Pp
.Tn DEC Ns -standard
error logging should be supported.
.Pp
A program to analyze the logged error information (even in its
present reduced form) is needed.
.Pp
The partition tables for the file systems should be read off of each
pack, as they are never quite what any single installation would prefer,
and this would make packs more portable.
.Pp
The
.Tn RK07
g partition size in rk.c disagrees with that in
.Pa /etc/disktab .