diff options
Diffstat (limited to 'static/netbsd/man4/sd.4')
| -rw-r--r-- | static/netbsd/man4/sd.4 | 277 |
1 files changed, 277 insertions, 0 deletions
diff --git a/static/netbsd/man4/sd.4 b/static/netbsd/man4/sd.4 new file mode 100644 index 00000000..da7848e9 --- /dev/null +++ b/static/netbsd/man4/sd.4 @@ -0,0 +1,277 @@ +.\" $NetBSD: sd.4,v 1.20 2016/06/10 08:05:13 wiz Exp $ +.\" +.\" Copyright (c) 1996 +.\" Julian Elischer <julian@freebsd.org>. 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. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR 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 AUTHOR 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. +.\" +.Dd June 9, 2016 +.Dt SD 4 +.Os +.Sh NAME +.Nm sd +.Nd SCSI and ATAPI disk driver +.Sh SYNOPSIS +.Cd "sd* at scsibus? target ? lun ?" +.Cd "sd3 at scsibus0 target 3 lun 0" +.Cd "sd* at atapibus? drive ? flags 0x0000" +.Sh DESCRIPTION +The +.Nm +driver provides support for +.Tn SCSI +bus and Advanced Technology Attachment Packet Interface +.Pq Tn ATAPI +disks. +It allows the disk to be divided up into a set of pseudo devices called +.Em partitions . +In general the interfaces are similar to those described by +.Xr wd 4 . +.Pp +Where the +.Xr wd 4 +device has a fairly low level interface to the system, +.Tn SCSI +devices have a much higher level interface and talk to the system via a +.Tn SCSI +host adapter +(e.g., +.Xr ahc 4 ) . +A +.Tn SCSI +adapter must also be separately configured into the system +before a +.Tn SCSI +disk can be configured. +.Pp +When the +.Tn SCSI +adapter is probed during boot, the +.Tn SCSI +bus is scanned for devices. +Any devices found which answer as +.Sq Em Direct +type devices will be attached to the +.Nm +driver. +.Pp +For the use of flags with ATAPI devices, see +.Xr wd 4 . +.\"In +.\".Tn FreeBSD +.\"releases prior to 2.1, the first found was attached as +.\".Li sd0 , +.\"the second +.\".Li sd1 , +.\"and so on. +.\"Beginning in 2.1 it became possible to lock down the assignment of +.\"devices on the +.\".Tn SCSI +.\"bus to particular units of the +.\".Nm +.\"device; refer to +.\".Xr scsi 4 +.\"for details on kernel configuration. +.Sh PARTITIONING +.\"The +.\".Nm +.\"driver allows the disk to have two levels of partitioning. +.\"One layer, called the +.\".Dq slice layer , +.\"is used to separate the +.\".Tn FreeBSD +.\"areas of the disk from areas used by other operating systems. +.\"The second layer is the native +.\".Bx 4.4 +.\"partitioning scheme, +.\".Xr disklabel 5 , +.\"which is used to subdivide the +.\".Tn FreeBSD +.\"slices into areas for individual filesystems and swap spaces. +.\"For more information, see +.\".Xr fdisk 8 +.\"and +.\".Xr disklabel 8 , +.\"respectively.) +On many systems +.Xr disklabel 8 +is used to partition the drive into filesystems. +On some systems the +.Nx +portion of the disk resides within a native partition, and another +program is used to create the +.Nx +portion. +.Pp +For example, the i386 port uses +.Xr fdisk 8 +to partition the disk into a +.Tn BIOS +level partition. +This allows sharing the disk with other operating systems. +.\".Pp +.\"If an uninitialized disk is opened, the slice table will be +.\"initialized with a fictitious +.\".Tn FreeBSD +.\"slice spanning the entire disk. +.\"Similarly, if an uninitialized +.\"(or +.\".No non- Ns Tn FreeBSD ) +.\"slice is opened, its disklabel will be initialized with parameters returned +.\"by the drive and a single +.\".Sq Li c +.\"partition encompassing the entire slice. +.\".Sh KERNEL CONFIGURATION +.\"It is only necessary to explicitly configure one +.\".Nm +.\"device; data structures are dynamically allocated as disks are found +.\"on the +.\".Tn SCSI +.\"bus. +.Sh CONFIGURATION OPTIONS +The following +.Xr config 1 +options may be applied to +.Tn SCSI +disks as well as to other disks. +.Pp +.Bl -tag -width SD_IO_TIMEOUT +.It Dv SDRETRIES +Set the number of retries that will be performed for operations it +makes sense to retry (e.g., normal reads and writes). +The default is four (4). +.It Dv SD_IO_TIMEOUT +Set amount of time, in milliseconds, a normal read or write is expected +to take. +The defaults is sixty seconds (60000 milliseconds). +This is used to set watchdog timers in the +.Tn SCSI +HBA driver to catch commands that might have died on the device. +.El +.Sh IOCTLS +The following +.Xr ioctl 2 +calls apply to +.Tn SCSI +disks as well as to other disks. +They are defined in the header file +.In sys/dkio.h +and use data structures defined in +.In sys/disklabel.h . +.Pp +.Bl -tag -width DIOCSDINFO +.\".It Dv DIOCSBAD +.\"Usually used to set up a bad-block mapping system on the disk. +.\".Tn SCSI +.\"drive incorporate their own bad-block mapping so this command is not +.\"implemented. +.It Dv DIOCGDINFO +Read, from the kernel, the in-core copy of the disklabel for the drive. +This may be a fictitious disklabel if the drive has never +been initialized, in which case it will contain information read +from the +.Tn SCSI +inquiry commands. +.It Dv DIOCSDINFO +Give the driver a new disklabel to use. +The driver +.Em will not +write the new +disklabel to the disk. +.It Dv DIOCKLABEL +Keep or drop the in-core disklabel on the last close. +.It Dv DIOCWLABEL +Enable or disable the driver's software +write protect of the disklabel on the disk. +.It Dv DIOCWDINFO +Give the driver a new disklabel to use. +The driver +.Em will +write the new disklabel to the disk. +.It Dv DIOCLOCK +Lock the media cartridge into the device, or unlock a cartridge previously +locked. +Used to prevent user and software eject while the media is in use. +.It Dv DIOCEJECT +Eject the media cartridge from a removable device. +.El +.Pp +In addition, the +.Xr scsi 4 +general +.Fn ioctl +commands may be used with the +.Nm +driver, but only against the +.Sq Li c +(whole disk) partition. +.Sh NOTES +If a removable device is attached to the +.Nm +driver, then the act of changing the media will invalidate the +disklabel and information held within the kernel. +To avoid corruption, all accesses to the device will be discarded +until there are no more open file descriptors referencing the +device. +During this period, all new open attempts will be rejected. +When no more open file descriptors reference the device, the first +next open will load a new set of parameters (including disklabel) +for the drive. +.Sh FILES +.Bl -tag -width /dev/rsdXXXXX -compact +.It Pa /dev/sd Ns Ar u Ns Ar p +block mode +.Tn SCSI +disk unit +.Ar u , +partition +.Ar p +.It Pa /dev/rsd Ns Ar u Ns Ar p +raw mode +.Tn SCSI +disk unit +.Ar u , +partition +.Ar p +.El +.Sh DIAGNOSTICS +None. +.Sh SEE ALSO +.Xr ioctl 2 , +.Xr intro 4 , +.Xr scsi 4 , +.Xr wd 4 , +.Xr disklabel 5 , +.Xr disklabel 8 , +.Xr fdisk 8 , +.Xr scsictl 8 +.Sh HISTORY +The +.Nm +driver was originally written for +.Tn Mach +2.5, and was ported to +.Fx +by Julian Elischer. +It was later ported to +.Nx . |
