NAME
hp —
MASSBUS disk interface
SYNOPSIS
hp0 at mba0 drive 0
hp* at mba? drive ?
DESCRIPTION
The
hp driver is a generic MASSBUS disk driver which handles
the standard DEC controllers. It is typical of a block-device disk driver;
block I/O is described in
physio(4).
The script
MAKEDEV(8) should
be used to create the special files; if a special file needs to be created by
hand consult
mknod(8). It is
recommended as a security precaution to not create special files for devices
which may never be installed.
The first sector of each disk contains both a first-stage bootstrap program and
a disk label containing geometry information and partition layouts (see
disklabel(5). This sector
is normally write-protected, and disk-to-disk copies should avoid copying this
sector. The label may be updated with
disklabel(8), which can
also be used to write-enable and write-disable the sector. The next 15 sectors
contain a second-stage bootstrap program.
DISK SUPPORT
During autoconfiguration or whenever a drive comes on line for the first time,
or when a drive is opened after all partitions are closed, the first sector of
the drive is examined for a disk label. If a label is found, the geometry of
the drive and the partition tables are taken from it. If no label is found, a
fake label is created by the driver, enough so that a real label can be
written.
The hp?a partition is normally used for the root file system, the hp?b partition
as a paging area, and the hp?c partition for pack-pack copying (it maps the
entire disk). On disks larger than about 205 Megabytes, the hp?h partition is
inserted prior to the hp?d or hp?g partition; the hp?g partition then maps the
remainder of the pack.
FILES
- /dev/hp[0-7][a-h]
- block files
- /dev/rhp[0-7][a-h]
- raw files
DIAGNOSTICS
- hp%d%c: hard error %sing fsbn %d [of
%d-%d] (hp%d bn %d cn %d tn %d sn %d) mbsr=%b er1=%b er2=%b.
- An unrecoverable error occurred during transfer of the
specified filesystem block number, which is a logical block number on the
indicated partition. If the transfer involved multiple blocks, the block
range is printed as well. The parenthesized fields list the actual disk
sector number relative to the beginning of the drive, as well as the
cylinder, track and sector number of the block. The MASSBUS status
register is printed in hexadecimal and with the error bits decoded if any
error bits other than MBEXC and DTABT are set. In any case the contents of
the two error registers are also printed in octal and symbolically with
bits decoded. (Note that er2 is what old RP06 manuals would call RPER3;
the terminology is that of the RM disks). The error was either
unrecoverable, or a large number of retry attempts (including offset
positioning and drive recalibration) could not recover the error.
- hp%d%c: soft ecc reading fsbn %d [of
%d-%d] (hp%d bn %d cn %d tn %d sn %d).
- A recoverable ECC error occurred on the specified sector
of the specified disk partition. If the transfer involved multiple blocks,
the block range is printed as well. The parenthesized fields list the
actual disk sector number relative to the beginning of the drive, as well
as the cylinder, track and sector number of the block. 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.
SEE ALSO
physio(4),
vax/up(4),
disklabel(5),
disklabel(8),
MAKEDEV(8),
mknod(8)
HISTORY
The
hp driver appeared in
4.0BSD.
A new
hp driver showed up in
NetBSD
1.2.
BUGS
DEC-standard
bad144(8)
bad-block handling should be used.
DEC-standard error logging should be supported.
A program to analyze the logged error information (even in its present reduced
form) is needed.