.\" $NetBSD: bio.4,v 1.12.8.1 2019/09/02 16:39:20 martin Exp $ .\" $OpenBSD: bio.4,v 1.19 2006/09/20 22:22:37 jmc Exp $ .\" .\" Copyright (c) 2002 Niklas Hallqvist .\" Copyright (c) 2006 Marco Peereboom .\" 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. The name of the author may not be used to endorse or promote products .\" derived from this software without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``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 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 Sep 27, 2014 .Dt BIO 4 .Os .Sh NAME .Nm bio .Nd Block IO ioctl tunnel pseudo-device .Sh SYNOPSIS .Cd "pseudo-device bio" .Sh DESCRIPTION The .Nm driver provides userland applications .Xr ioctl 2 access to devices otherwise not found as .Pa /dev nodes. The .Pa /dev/bio device node operates by delegating ioctl calls to a requested device driver. Only drivers which have registered with the .Nm device can be accessed via this interface. .Pp The following device drivers register with .Nm for volume management: .Pp .Bl -tag -width ciss(4)XX -offset indent -compact .\" .It Xr ami 4 .\" American Megatrends Inc. MegaRAID PATA/SATA/SCSI RAID controller .It Xr arcmsr 4 Areca Technology Corporation SATA RAID controller .It Xr cac 4 Compaq RAID array controller .It Xr ciss 4 Compaq Smart ARRAY 5/6 SAS/SATA/SCSI RAID controller .It Xr mfi 4 LSI Logic & Dell MegaRAID SAS RAID controller .It Xr mpt 4 LSI Fusion-MPT RAID controller .El .Pp The following ioctl calls apply to the .Nm bio device: .Bl -tag -width BIOCCAPABILITIES .It Dv BIOCLOCATE Locate a named device and give back a cookie to the application for subsequent ioctl calls. The cookie is used to tunnel further ioctls to the right device. .It Dv BIOCINQ Retrieve number of volumes and physical disks for a specific device. .It Dv BIOCDISK Retrieve detailed information for the specified physical disk. Information returned can include status, size, channel, target, lun, vendor name, serial number, and processor device (ses). .\" or safte .It Dv BIOCDISK_NOVOL Is just the same as .Em BIOCDISK but doesn't require the disks to be in volume sets, so this applies to any physical disk connected to the controller. .Pp Note: this ioctl might not be supported on all hardware. .It Dv BIOCVOL Retrieve detailed information for the specified volume. Information returned can include status, size, RAID level, number of disks, device name association (sd?) and vendor name. .It Dv BIOCALARM Control the alarm beeper on the device. Supported states are: disable alarm, enable alarm, silence alarm, status and test alarm. .Pp Note: These options might not be supported on all hardware. .It Dv BIOCBLINK Blink an LED of the specified physical disk. Supported blink states are: blink LED, unblink LED and blink alarm LED. .Pp Note: This option is only supported if the disk is governed by .Xr ses 4 .\" or .\" .Xr safte 4 and the hardware supports hardware blinking. .It Dv BIOCSETSTATE Alter the state of specified physical disk. Supported states are: create/remove hot-spare, create/remove pass through disk, start/stop consistency check in a volume, online disk and offline disk. .Pp Note: These options might not be supported on all hardware. .It Dv BIOCVOLOPS For operations in volume sets. It's able to create and remove a volume set in a supported RAID controller. .Pp Note: this ioctl might not be supported on all hardware. .El .Sh FILES .Bl -tag -width /dev/bio -compact .It Pa /dev/bio ioctl tunnel device .El .Sh SEE ALSO .Xr ioctl 2 , .Xr bioctl 8 .Sh HISTORY The .Nm driver first appeared in .Ox 3.2 and .Nx 4.0 . .Sh AUTHORS .An -nosplit The .Nm driver was written by .An Niklas Hallqvist Aq Mt niklas@openbsd.org . The API was written by .An Marco Peereboom Aq Mt marco@openbsd.org and was extended even more for .Nx by .An Juan Romero Pardines Aq Mt xtraeme@netbsd.org .