]> CyberLeo.Net >> Repos - FreeBSD/releng/10.3.git/blob - share/man/man4/geom_fox.4
- Copy stable/10@296371 to releng/10.3 in preparation for 10.3-RC1
[FreeBSD/releng/10.3.git] / share / man / man4 / geom_fox.4
1 .\"
2 .\" Copyright (c) 2006 Wilko Bulte
3 .\" All rights reserved.
4 .\"
5 .\" Redistribution and use in source and binary forms, with or without
6 .\" modification, are permitted provided that the following conditions
7 .\" are met:
8 .\" 1. Redistributions of source code must retain the above copyright
9 .\"    notice, this list of conditions and the following disclaimer.
10 .\" 2. Redistributions in binary form must reproduce the above copyright
11 .\"    notice, this list of conditions and the following disclaimer in the
12 .\"    documentation and/or other materials provided with the distribution.
13 .\"
14 .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
15 .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
16 .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
17 .\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
18 .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
19 .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
20 .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
21 .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
22 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
23 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
24 .\" SUCH DAMAGE.
25 .\"
26 .\" $FreeBSD$
27 .\"
28 .Dd September 12, 2015
29 .Dt GEOM_FOX 4
30 .Os
31 .Sh NAME
32 .Nm geom_fox
33 .Nd "GEOM based basic disk multipathing"
34 .Sh SYNOPSIS
35 To compile this driver into the kernel,
36 place the following line in your
37 kernel configuration file:
38 .Bd -ragged -offset indent
39 .Cd "options GEOM_FOX"
40 .Ed
41 .Pp
42 Alternatively, to load the driver as a
43 module at boot time, place the following line in
44 .Xr loader.conf 5 :
45 .Bd -literal -offset indent
46 geom_fox_load="YES"
47 .Ed
48 .Sh DESCRIPTION
49 .Bf -symbolic
50 This driver is obsolete.
51 Users are advised to use
52 .Xr gmultipath 8
53 instead.
54 .Ef
55 .Pp
56 The intent of the
57 .Nm
58 framework is to provide basic multipathing support to access direct
59 access devices.
60 Basic in the above sentence should be read as:
61 .Nm
62 only provides path failover functionality, not load balancing over
63 the available paths etc.
64 Using suitable hardware like SCSI or FibreChannel disks it is
65 possible to have multiple (typically 2) host bus adapters access
66 the same physical disk drive.
67 .Pp
68 Without a multipathing driver the
69 .Fx
70 kernel would probe the disks multiple times, resulting in the creation of
71 multiple
72 .Pa /dev
73 entries for the same underlying physical device.
74 A unique label written in the GEOM label area allows
75 .Nm
76 to detect multiple paths.
77 Using this information it creates a unique
78 .Pa da#.fox
79 device.
80 .Pp
81 The
82 .Nm
83 device is subsequently used by the
84 .Fx
85 kernel to access the disks.
86 Multiple physical access paths ensure that even in case of a path failure the
87 .Fx
88 kernel can continue to access the data.
89 .Pp
90 The
91 .Nm
92 driver will disallow write operations to the underlying devices once the
93 fox device has been opened for writing.
94 .Sh EXAMPLES
95 .Bl -bullet -compact
96 .It
97 .Nm
98 needs a label on the disk as follows in order to work properly:
99 .Bd -literal
100 "0123456789abcdef0123456789abcdef"
101 "GEOM::FOX       <--unique--id-->"
102 .Ed
103 .Pp
104 For the unique ID 16 bytes are available.
105 The
106 .Dq Li GEOM::FOX
107 is the magic to mark a
108 .Nm
109 device.
110 .Pp
111 The actual labelling is accomplished by
112 .Bd -literal
113 echo "GEOM::FOX       someid" | dd of=/dev/da2 conv=sync
114 .Ed
115 .Pp
116 For FibreChannel devices it is suggested to use the Node World Wide
117 Name (Node WWN) as this is guaranteed by the FibreChannel standard to
118 be worldwide unique.
119 The use of the Port WWN not recommended as each port of a given
120 device has a different WWN, thereby confusing things.
121 .Pp
122 The Node WWN can be obtained from a verbose boot as in for example
123 .Bd -literal
124 isp1: Target 1 (Loop 0x1) Port ID 0xe8 (role Target) Arrived
125  Port WWN 0x21000004cfc8aca2
126  Node WWN 0x20000004cfc8aca2
127 .Ed
128 .Pp
129 This Node WWN would then be used like so:
130 .Bd -literal
131 echo "GEOM::FOX       20000004cfc8aca2" | dd of=/dev/da2 conv=sync
132 .Ed
133 .Pp
134 For non-FibreChannel devices you could for example use the serial
135 number of the device.
136 Regardless of what you use, make sure the label is unique.
137 .Pp
138 Once the labelling has been performed and assuming the
139 .Nm
140 module is loaded the kernel will inform you that it has found a new
141 .Nm
142 device with a message similar to
143 .Bd -literal
144 Creating new fox (da2)
145 fox da2.fox lock 0xfffffc0000fdba20
146 .Ed
147 .Pp
148 .It
149 To check which physical devices match a given
150 .Nm
151 device:
152 .Bd -literal -offset indent
153 # geom fox list
154 Geom name: da2.fox
155 Providers:
156 1. Name: da2.fox
157    Mediasize: 73407865344 (68G)
158    Sectorsize: 512
159    Mode: r0w0e0
160 Consumers:
161 1. Name: da2
162    Mediasize: 73407865856 (68G)
163    Sectorsize: 512
164    Mode: r0w0e0
165 2. Name: da6
166    Mediasize: 73407865856 (68G)
167    Sectorsize: 512
168    Mode: r0w0e0
169 .Ed
170 .Pp
171 .It
172 To check the status of the
173 .Nm
174 components:
175 .Bd -literal
176 # geom fox status
177    Name  Status  Components
178 da2.fox     N/A  da2
179                  da6
180 .Ed
181 .El
182 .Sh SEE ALSO
183 .Xr GEOM 4 ,
184 .Xr geom 8 ,
185 .Xr gmultipath 8
186 .Sh AUTHORS
187 .An -nosplit
188 The
189 .Nm
190 driver was written by
191 .An "Poul-Henning Kamp" Aq phk@FreeBSD.org .
192 This manual page was written by
193 .An "Wilko Bulte" Aq wilko@FreeBSD.org .
194 .Sh CAVEATS
195 The
196 .Nm
197 driver depends on the underlying hardware drivers to do the right thing in case
198 of a path failure.
199 If for example a hardware driver continues to retry forever,
200 .Nm
201 is not able to re-initiate the I/O to an alternative physical path.
202 .Pp
203 You have to be very sure to provide a unique label for each of the
204 .Nm
205 devices.
206 Safety belts are not provided.
207 For FibreChannel devices it is suggested to use the Port WWN of the device.
208 The World Wide Name is guaranteed to be worldwide unique per the
209 FibreChannel standard.
210 .Sh BUGS
211 The
212 .Nm
213 framework has only seen light testing.
214 There definitely might be dragons here.
215 .Pp
216 The name
217 .Nm
218 is completely obscure.
219 Just remember that any sly fox has multiple exits from its hole.
220 .Pp
221 The examples provided are too FibreChannel-centric.