CINXE.COM

Super User's BSD Cross Reference: /OpenBSD/share/man/man4/bio.4

<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <meta name="robots" content="nofollow" /> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <meta name="generator" content="0.11-rc2 (d0ffee7f9877+)" /> <meta http-equiv="X-UA-Compatible" content="IE=8" /> <link rel="icon" href="/default/img/icon.png" type="image/png" /> <link rel="stylesheet" type="text/css" media="all" title="Default" href="/default/style.css" /> <link rel="alternate stylesheet" type="text/css" media="all" title="Paper White" href="/default/print.css" /> <link rel="stylesheet" type="text/css" href="/default/print.css" media="print" /> <link rel="stylesheet" type="text/css" href="/default/jquery.tooltip.css" /> <link rel="search" href="/opensearch" type="application/opensearchdescription+xml" title="OpenGrok Search for current project(s)" /> <script type="text/javascript" src="/jquery-1.4.4.min.js"></script> <script type="text/javascript" src="/jquery.tooltip-1.3.pack.js"></script> <script type="text/javascript" src="/utils.js"></script> <title>Super User's BSD Cross Reference: /OpenBSD/share/man/man4/bio.4</title> </head><body> <script type="text/javascript">/* <![CDATA[ */ document.hash = 'null';document.rev = '';document.link = '/xref/OpenBSD/share/man/man4/bio.4';document.annotate = false; document.domReady.push(function() {domReadyMast();}); document.pageReady.push(function() { pageReadyMast();}); /* ]]> */</script> <div id="page"> <div id="whole_header"> <form action="/search"> <div id="header"> <a href="/"><span id="MastheadLogo"></span></a> <div id="pagetitle"><span id="filename" >Super User's BSD Cross Reference: bio.4</span></div> </div> <div id="Masthead"> <tt><a href="/xref/">xref</a>: /<a href="/xref/OpenBSD/">OpenBSD</a>/<a href="/xref/OpenBSD/share/">share</a>/<a href="/xref/OpenBSD/share/man/">man</a>/<a href="/xref/OpenBSD/share/man/man4/">man4</a>/<a href="/xref/OpenBSD/share/man/man4/bio.4">bio.4</a></tt> </div> <div id="bar"> <ul> <li><a href="/"><span id="home"></span>Home</a></li> <li><a href="http://www.openbsd.org/cgi-bin/cvsweb/src/share/man/man4/bio.4">CVSweb</a></li><li><a href="http://cvsweb.allbsd.org/cvsweb.cgi/src/share/man/man4/bio.4?cvsroot=openbsd" title='CVSweb from allbsd.org'>allbsd</a></li><li><a href="http://git.freebsd.your.org/gitweb/?p=openbsd.git;a=history;f=share/man/man4/bio.4"><small>Gitweb history</small></a></li><li><a href="#" onclick="javascript:lntoggle();return false;" title="Show or hide line numbers (might be slower if file has more than 10 000 lines)."><span id="line"></span>Line#</a></li><li><a href="#" onclick="javascript:lsttoggle();return false;" title="Show or hide symbol list."><span id="defbox"></span>Navigate</a></li><li><a href="/raw/OpenBSD/share/man/man4/bio.4"><span id="download"></span>Download</a></li><li><input type="text" id="search" name="q" class="q" /> <input type="submit" value="Search" class="submit" /></li><li><input type="checkbox" name="path" value="/OpenBSD/share/man/man4/" /> only in <b>bio.4</b></li> </ul> <input type="hidden" name="project" value="OpenBSD" /> </div> </form> </div> <div id="content"> <script type="text/javascript">/* <![CDATA[ */ document.pageReady.push(function() { pageReadyList();}); /* ]]> */</script> <div id="src"> <pre><a class="l" name="1" href="#1">1</a><span class="c">.\" $OpenBSD: bio.4,v 1.35 2024/07/13 15:28:42 krw Exp $</span> <a class="l" name="2" href="#2">2</a><span class="c">.\"</span> <a class="l" name="3" href="#3">3</a><span class="c">.\" Copyright (c) 2002 Niklas Hallqvist</span> <a class="l" name="4" href="#4">4</a><span class="c">.\" Copyright (c) 2006 Marco Peereboom</span> <a class="l" name="5" href="#5">5</a><span class="c">.\" All rights reserved.</span> <a class="l" name="6" href="#6">6</a><span class="c">.\"</span> <a class="l" name="7" href="#7">7</a><span class="c">.\" Redistribution and use in source and binary forms, with or without</span> <a class="l" name="8" href="#8">8</a><span class="c">.\" modification, are permitted provided that the following conditions</span> <a class="l" name="9" href="#9">9</a><span class="c">.\" are met:</span> <a class="hl" name="10" href="#10">10</a><span class="c">.\" 1. Redistributions of source code must retain the above copyright</span> <a class="l" name="11" href="#11">11</a><span class="c">.\" notice, this list of conditions and the following disclaimer.</span> <a class="l" name="12" href="#12">12</a><span class="c">.\" 2. Redistributions in binary form must reproduce the above copyright</span> <a class="l" name="13" href="#13">13</a><span class="c">.\" notice, this list of conditions and the following disclaimer in the</span> <a class="l" name="14" href="#14">14</a><span class="c">.\" documentation and/or other materials provided with the distribution.</span> <a class="l" name="15" href="#15">15</a><span class="c">.\" 3. The name of the author may not be used to endorse or promote products</span> <a class="l" name="16" href="#16">16</a><span class="c">.\" derived from this software without specific prior written permission.</span> <a class="l" name="17" href="#17">17</a><span class="c">.\"</span> <a class="l" name="18" href="#18">18</a><span class="c">.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR</span> <a class="l" name="19" href="#19">19</a><span class="c">.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED</span> <a class="hl" name="20" href="#20">20</a><span class="c">.\" WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE</span> <a class="l" name="21" href="#21">21</a><span class="c">.\" DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT,</span> <a class="l" name="22" href="#22">22</a><span class="c">.\" INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES</span> <a class="l" name="23" href="#23">23</a><span class="c">.\" (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR</span> <a class="l" name="24" href="#24">24</a><span class="c">.\" SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)</span> <a class="l" name="25" href="#25">25</a><span class="c">.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,</span> <a class="l" name="26" href="#26">26</a><span class="c">.\" STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN</span> <a class="l" name="27" href="#27">27</a><span class="c">.\" ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE</span> <a class="l" name="28" href="#28">28</a><span class="c">.\" POSSIBILITY OF SUCH DAMAGE.</span> <a class="l" name="29" href="#29">29</a><span class="c">.\"</span> <a class="hl" name="30" href="#30">30</a><b>.Dd</b> $Mdocdate: July 13 2024 $ <a class="l" name="31" href="#31">31</a><b>.Dt</b> BIO 4 <a class="l" name="32" href="#32">32</a><b>.Os</b> <a class="l" name="33" href="#33">33</a><b>.Sh NAME</b> <a class="l" name="34" href="#34">34</a><b>.Nm</b> bio <a class="l" name="35" href="#35">35</a><b>.Nd</b> block I/O ioctl tunnel pseudo-device <a class="l" name="36" href="#36">36</a><b>.Sh SYNOPSIS</b> <a class="l" name="37" href="#37">37</a><b>.Cd</b> "<span class='s'>pseudo-device bio</span>"<b> Op</b><b> Ar</b> count <a class="l" name="38" href="#38">38</a><b>.Sh DESCRIPTION</b> <a class="l" name="39" href="#39">39</a>The <a class="hl" name="40" href="#40">40</a><b>.Nm</b> <a class="l" name="41" href="#41">41</a>driver provides userland applications <a class="l" name="42" href="#42">42</a><b>.Xr </b><a href='/s?path=ioctl.2&amp;project=OpenBSD'>ioctl 2</a> <a class="l" name="43" href="#43">43</a>access to devices otherwise not found as <a class="l" name="44" href="#44">44</a><b>.Pa </b>/dev <a class="l" name="45" href="#45">45</a>nodes. <a class="l" name="46" href="#46">46</a>The <a class="l" name="47" href="#47">47</a><b>.Pa </b>/dev/bio <a class="l" name="48" href="#48">48</a>device node operates by delegating ioctl <a class="l" name="49" href="#49">49</a>calls to a requested device driver. <a class="hl" name="50" href="#50">50</a>Only drivers which have registered with the <a class="l" name="51" href="#51">51</a><b>.Nm</b> <a class="l" name="52" href="#52">52</a>device can be accessed via this interface. <a class="l" name="53" href="#53">53</a><b>.Pp</b> <a class="l" name="54" href="#54">54</a>If <a class="l" name="55" href="#55">55</a><b>.Ar</b> count <a class="l" name="56" href="#56">56</a>is given in the specification, and is greater than 0, a maximum of one <a class="l" name="57" href="#57">57</a><b>.Nm</b> bio <a class="l" name="58" href="#58">58</a>device is created. <a class="l" name="59" href="#59">59</a><b>.Pp</b> <a class="hl" name="60" href="#60">60</a>The following device drivers register with <a class="l" name="61" href="#61">61</a><b>.Nm</b> <a class="l" name="62" href="#62">62</a>for volume management: <a class="l" name="63" href="#63">63</a><b>.Pp</b> <a class="l" name="64" href="#64">64</a><b>.Bl</b> -tag -width softraid(4)XX -offset indent -compact <a class="l" name="65" href="#65">65</a><b>.It</b><b> Xr </b><a href='/s?path=ami.4&amp;project=OpenBSD'>ami 4</a> <a class="l" name="66" href="#66">66</a>American Megatrends Inc. MegaRAID PATA/SATA/SCSI RAID controller <a class="l" name="67" href="#67">67</a><b>.It</b><b> Xr </b><a href='/s?path=arc.4&amp;project=OpenBSD'>arc 4</a> <a class="l" name="68" href="#68">68</a>Areca Technology Corporation SAS/SATA RAID controller <a class="l" name="69" href="#69">69</a><b>.It</b><b> Xr </b><a href='/s?path=cac.4&amp;project=OpenBSD'>cac 4</a> <a class="hl" name="70" href="#70">70</a>Compaq Smart Array 2/3/4 SCSI RAID controller <a class="l" name="71" href="#71">71</a><b>.It</b><b> Xr </b><a href='/s?path=ciss.4&amp;project=OpenBSD'>ciss 4</a> <a class="l" name="72" href="#72">72</a>Compaq Smart Array SAS/SATA/SCSI RAID controller <a class="l" name="73" href="#73">73</a><b>.It</b><b> Xr </b><a href='/s?path=gdt.4&amp;project=OpenBSD'>gdt 4</a> <a class="l" name="74" href="#74">74</a>ICP-Vortex and Intel GDT SATA/SCSI RAID controller <a class="l" name="75" href="#75">75</a><b>.It</b><b> Xr </b><a href='/s?path=ips.4&amp;project=OpenBSD'>ips 4</a> <a class="l" name="76" href="#76">76</a>IBM SATA/SCSI ServeRAID controller <a class="l" name="77" href="#77">77</a><b>.It</b><b> Xr </b><a href='/s?path=mfi.4&amp;project=OpenBSD'>mfi 4</a> <a class="l" name="78" href="#78">78</a>LSI Logic &amp; Dell MegaRAID SAS RAID controller <a class="l" name="79" href="#79">79</a><b>.It</b><b> Xr </b><a href='/s?path=mfii.4&amp;project=OpenBSD'>mfii 4</a> <a class="hl" name="80" href="#80">80</a>LSI Logic MegaRAID SAS Fusion RAID controller <a class="l" name="81" href="#81">81</a><b>.It</b><b> Xr </b><a href='/s?path=mpi.4&amp;project=OpenBSD'>mpi 4</a> <a class="l" name="82" href="#82">82</a>LSI Logic Fusion-MPT Message Passing Interface <a class="l" name="83" href="#83">83</a><b>.It</b><b> Xr </b><a href='/s?path=mpii.4&amp;project=OpenBSD'>mpii 4</a> <a class="l" name="84" href="#84">84</a>LSI Logic Fusion-MPT Message Passing Interface II <a class="l" name="85" href="#85">85</a><b>.It</b><b> Xr </b><a href='/s?path=nvme.4&amp;project=OpenBSD'>nvme 4</a> <a class="l" name="86" href="#86">86</a>NVMe storage controllers <a class="l" name="87" href="#87">87</a><b>.It</b><b> Xr </b><a href='/s?path=softraid.4&amp;project=OpenBSD'>softraid 4</a> <a class="l" name="88" href="#88">88</a>Software RAID <a class="l" name="89" href="#89">89</a><b>.El</b> <a class="hl" name="90" href="#90">90</a><b>.Pp</b> <a class="l" name="91" href="#91">91</a>The following device drivers register with <a class="l" name="92" href="#92">92</a><b>.Nm</b> <a class="l" name="93" href="#93">93</a>to provide enclosure management: <a class="l" name="94" href="#94">94</a><b>.Pp</b> <a class="l" name="95" href="#95">95</a><b>.Bl</b> -tag -width safte($)XX -offset indent -compact <a class="l" name="96" href="#96">96</a><b>.It</b><b> Xr </b><a href='/s?path=safte.4&amp;project=OpenBSD'>safte 4</a> <a class="l" name="97" href="#97">97</a>SCSI Accessed Fault-Tolerant Enclosure <a class="l" name="98" href="#98">98</a><b>.It</b><b> Xr </b><a href='/s?path=ses.4&amp;project=OpenBSD'>ses 4</a> <a class="l" name="99" href="#99">99</a>SCSI Enclosure Services <a class="hl" name="100" href="#100">100</a><b>.El</b> <a class="l" name="101" href="#101">101</a><b>.Pp</b> <a class="l" name="102" href="#102">102</a>The following ioctl calls apply to the <a class="l" name="103" href="#103">103</a><b>.Nm</b> <a class="l" name="104" href="#104">104</a>device: <a class="l" name="105" href="#105">105</a><b>.Bl</b> -tag -width<b> Ds</b> <a class="l" name="106" href="#106">106</a><b>.It</b><b> Dv</b> BIOCLOCATE<b> Fa</b> "<span class='s'>struct bio_locate *</span>" <a class="l" name="107" href="#107">107</a>Locate a named device and give back a cookie to the application <a class="l" name="108" href="#108">108</a>for subsequent ioctl calls. <a class="l" name="109" href="#109">109</a>The cookie is used to tunnel further ioctls to the right device. <a class="hl" name="110" href="#110">110</a><b>.It</b><b> Dv</b> BIOCINQ<b> Fa</b> "<span class='s'>struct bioc_inq *</span>" <a class="l" name="111" href="#111">111</a>Retrieve number of volumes and physical disks for a specific device. <a class="l" name="112" href="#112">112</a><b>.It</b><b> Dv</b> BIOCDISK<b> Fa</b> "<span class='s'>struct bioc_disk *</span>" <a class="l" name="113" href="#113">113</a>Retrieve detailed information for the specified physical disk. <a class="l" name="114" href="#114">114</a>Information returned can include status, size, channel, target, lun, <a class="l" name="115" href="#115">115</a>vendor name, serial number and processor device (ses or safte). <a class="l" name="116" href="#116">116</a><b>.It</b><b> Dv</b> BIOCVOL<b> Fa</b> "<span class='s'>struct bioc_vol *</span>" <a class="l" name="117" href="#117">117</a>Retrieve detailed information for the specified volume. <a class="l" name="118" href="#118">118</a>Information returned can include status, size, RAID level, number of disks, <a class="l" name="119" href="#119">119</a>device name association (sd?) and vendor name. <a class="hl" name="120" href="#120">120</a><b>.It</b><b> Dv</b> BIOCALARM<b> Fa</b> "<span class='s'>struct bioc_alarm *</span>" <a class="l" name="121" href="#121">121</a>Control the alarm beeper on the device. <a class="l" name="122" href="#122">122</a>Supported states are: disable alarm, enable alarm, silence alarm, status and <a class="l" name="123" href="#123">123</a>test alarm. <a class="l" name="124" href="#124">124</a><b>.Pp</b> <a class="l" name="125" href="#125">125</a>Note: These options might not be supported on all hardware. <a class="l" name="126" href="#126">126</a><b>.It</b><b> Dv</b> BIOCBLINK<b> Fa</b> "<span class='s'>struct bioc_blink *</span>" <a class="l" name="127" href="#127">127</a>Blink an LED of the specified physical disk. <a class="l" name="128" href="#128">128</a>Supported blink states are: blink LED, unblink LED and blink alarm LED. <a class="l" name="129" href="#129">129</a><b>.Pp</b> <a class="hl" name="130" href="#130">130</a>Note: This option is only supported if the disk is governed by <a class="l" name="131" href="#131">131</a><b>.Xr </b><a href='/s?path=ses.4&amp;project=OpenBSD'>ses 4</a> <a class="l" name="132" href="#132">132</a>or <a class="l" name="133" href="#133">133</a><b>.Xr </b><a href='/s?path=safte.4&amp;project=OpenBSD'>safte 4</a> <a class="l" name="134" href="#134">134</a>and the hardware supports hardware blinking. <a class="l" name="135" href="#135">135</a><b>.It</b><b> Dv</b> BIOCSETSTATE<b> Fa</b> "<span class='s'>struct bioc_setstate *</span>" <a class="l" name="136" href="#136">136</a>Alter the state of specified physical disk. <a class="l" name="137" href="#137">137</a>Supported states are: create hot-spare, online disk and offline disk. <a class="l" name="138" href="#138">138</a><b>.El</b> <a class="l" name="139" href="#139">139</a><b>.Pp</b> <a class="hl" name="140" href="#140">140</a>The following ioctl calls apply to the <a class="l" name="141" href="#141">141</a><b>.Nm</b> <a class="l" name="142" href="#142">142</a>device only when talking to a <a class="l" name="143" href="#143">143</a><b>.Xr </b><a href='/s?path=softraid.4&amp;project=OpenBSD'>softraid 4</a> <a class="l" name="144" href="#144">144</a>device: <a class="l" name="145" href="#145">145</a><b>.Bl</b> -tag -width<b> Ds</b> <a class="l" name="146" href="#146">146</a><b>.It</b><b> Dv</b> BIOCCREATERAID<b> Fa</b> "<span class='s'>struct bioc_createraid *</span>" <a class="l" name="147" href="#147">147</a>Create a new volume or assemble an existing volume. <a class="l" name="148" href="#148">148</a>The volume will be attached as a system disk, if this capability is supported <a class="l" name="149" href="#149">149</a>by the volume discipline. <a class="hl" name="150" href="#150">150</a><b>.It</b><b> Dv</b> BIOCDELETERAID<b> Fa</b> "<span class='s'>struct bioc_deleteraid *</span>" <a class="l" name="151" href="#151">151</a>Remove system disk (if present) and disassemble the <a class="l" name="152" href="#152">152</a><b>.Xr </b><a href='/s?path=softraid.4&amp;project=OpenBSD'>softraid 4</a> <a class="l" name="153" href="#153">153</a>volume. <a class="l" name="154" href="#154">154</a><b>.It</b><b> Dv</b> BIOCDISCIPLINE<b> Fa</b> "<span class='s'>struct bioc_discipline *</span>" <a class="l" name="155" href="#155">155</a>Dispatch a discipline specific ioctl. <a class="l" name="156" href="#156">156</a><b>.It</b><b> Dv</b> BIOCINSTALLBOOT<b> Fa</b> "<span class='s'>struct bioc_installboot *</span>" <a class="l" name="157" href="#157">157</a>Install a boot loader. <a class="l" name="158" href="#158">158</a><b>.El</b> <a class="l" name="159" href="#159">159</a><b>.Sh FILES</b> <a class="hl" name="160" href="#160">160</a><b>.Bl</b> -tag -width /dev/bio -compact <a class="l" name="161" href="#161">161</a><b>.It</b><b> Pa </b>/dev/bio <a class="l" name="162" href="#162">162</a>ioctl tunnel device <a class="l" name="163" href="#163">163</a><b>.El</b> <a class="l" name="164" href="#164">164</a><b>.Sh SEE ALSO</b> <a class="l" name="165" href="#165">165</a><b>.Xr </b><a href='/s?path=ioctl.2&amp;project=OpenBSD'>ioctl 2</a> , <a class="l" name="166" href="#166">166</a><b>.Xr </b><a href='/s?path=softraid.4&amp;project=OpenBSD'>softraid 4</a> , <a class="l" name="167" href="#167">167</a><b>.Xr </b><a href='/s?path=bioctl.8&amp;project=OpenBSD'>bioctl 8</a> <a class="l" name="168" href="#168">168</a><b>.Sh HISTORY</b> <a class="l" name="169" href="#169">169</a>The <a class="hl" name="170" href="#170">170</a><b>.Nm</b> <a class="l" name="171" href="#171">171</a>driver first appeared in <a class="l" name="172" href="#172">172</a><b><a href='http://www.openbsd.org/32.html'>.Ox 3.2</a></b> . <a class="l" name="173" href="#173">173</a><b>.Sh AUTHORS</b> <a class="l" name="174" href="#174">174</a><b>.An </b>-nosplit <a class="l" name="175" href="#175">175</a>The <a class="l" name="176" href="#176">176</a><b>.Nm</b> <a class="l" name="177" href="#177">177</a>driver was written by <a class="l" name="178" href="#178">178</a><b>.An </b><a href="/s?q=&quot;Niklas Hallqvist&quot;">Niklas Hallqvist</a> <b>Aq</b> Mt niklas@openbsd.org . <a class="l" name="179" href="#179">179</a>The API was written by <a class="hl" name="180" href="#180">180</a><b>.An </b><a href="/s?q=&quot;Marco Peereboom&quot;">Marco Peereboom</a> <b>Aq</b> Mt marco@openbsd.org . <a class="l" name="181" href="#181">181</a></pre> </div> <div id="footer"> <p><a href="http://www.opensolaris.org/os/project/opengrok/" title="Served by OpenGrok"><span id="fti"></span></a></p> <div><img src="//mc.yandex.ru/watch/21237232" style="position:absolute; left:-9999px;" alt="" /></div> <p>Indexes created Fri Mar 21 03:53:36 PDT 2025</p></div></div> </div> </body> </html>

Pages: 1 2 3 4 5 6 7 8 9 10