1ssd(7D)                             Devices                            ssd(7D)
2
3
4

NAME

6       ssd - Fibre Channel Arbitrated Loop disk device driver
7

SYNOPSIS

9       ssd@port,target:partition
10
11

DESCRIPTION

13        The ssd driver supports Fibre Channel disk devices.
14
15
16       The  specific  type of each disk is determined by the SCSI inquiry com‐
17       mand and reading the volume label stored on block 0 of the  drive.  The
18       volume  label  describes the disk geometry and partitioning; it must be
19       present or the disk cannot be mounted by the system.
20
21
22       The block-files access the disk using  the  system's  normal  buffering
23       mechanism  and  are  read  and  written without regard to physical disk
24       records. A "raw" interface provides for direct transmission between the
25       disk  and the read or write buffer. A single read or write call usually
26       results in one I/O operation; raw I/O is therefore more efficient  when
27       many bytes are transmitted. Block file names are found in /dev/dsk; the
28       names of the raw files are found in /dev/rdsk.
29
30
31       I/O requests (such as lseek(2)) to the SCSI disk must  have  an  offset
32       that  is  a multiple of 512 bytes (DEV_BSIZE), or the driver returns an
33       EINVAL error. If the transfer length is not a multiple  of  512  bytes,
34       the transfer count is rounded up by the driver.
35
36
37       Partition  0  is normally used for the root file system on a disk, with
38       partition 1 as a paging area (for example, swap). Partition 2  is  used
39       to  back  up the entire disk. Partition 2 normally maps the entire disk
40       and may also be used as the mount point for secondary disks in the sys‐
41       tem.  The  rest  of  the  disk is normally partition 6. For the primary
42       disk, the user file system is located here.
43
44
45       The device has associated error statistics. These must include counters
46       for  hard  errors,  soft errors and transport errors. Other data may be
47       implemented as required.
48

DEVICE STATISTICS SUPPORT

50       The device maintains I/O statistics for the device and  for  partitions
51       allocated for that device. For each device/partition, the  driver accu‐
52       mulates reads, writes, bytes read, and bytes written. The  driver  also
53       initiates  hi-resolution  time stamps at queue entry and exit points to
54       enable monitoring of residence  time  and  cumulative  residence-length
55       product for each queue.
56
57
58       Not  all  device drivers make per-partition IO statistics available for
59       reporting. ssd and sd(7D)  per-partition  statistics  are   enabled  by
60       default but may be disabled in their configuration files.
61

IOCTLS

63       Refer to  dkio(7I).
64

ERRORS

66       EACCES    Permission denied.
67
68
69       EBUSY     The partition was opened exclusively by another thread.
70
71
72       EFAULT    The argument was a bad address.
73
74
75       EINVAL    Invalid argument.
76
77
78       EIO       An I/O error occurred.
79
80
81       ENOTTY    The device does not support the requested ioctl function.
82
83
84       ENXIO     When  returned  during   open(2),  this  error  indicates the
85                 device does not exist.
86
87
88       EROFS     The device is a read-only device.
89
90

CONFIGURATION

92       You configure the ssd driver by defining  properties  in  the  ssd.conf
93       file. The ssd driver supports the following properties:
94
95       enable-partition-kstats    The  default value is 1, which causes parti‐
96                                  tion IO statistics  to  be  maintained.  Set
97                                  this  value  to  zero  to prevent the driver
98                                  from recording  partition  statistics.  This
99                                  slightly  reduces  the  CPU overhead for IO,
100                                  mimimizes the amount  of  sar(1)  data  col‐
101                                  lected  and  makes these statistics unavail‐
102                                  able for reporting by iostat(1M) even though
103                                  the  -p/-P  option is specified.  Regardless
104                                  of this  setting,  disk  IO  statistics  are
105                                  always maintained.
106
107
108
109       In  addition to the above properties, some device-specific tunables can
110       be configured in ssd.conf using the 'ssd-config-list' global  property.
111       The value of this property is a list of duplets. The formal syntax is:
112
113         ssd-config-list =   <duplet> [, <duplet> ]* ;
114
115         where
116
117         <duplet>:=        "<vid+pid>" , "<tunable-list>"
118
119         and
120
121         <tunable-list>:=   <tunable>  [, <tunable> ]*;
122         <tunable> =        <name> : <value>
123
124         The <vid+pid> is the string that is returned by the target device
125         on a SCSI inquiry command.
126
127         The <tunable-list> contains one or more tunables to apply to
128         all target devices with the specified <vid+pid>.
129
130         Each <tunable> is a <name> : <value> pair. Supported
131         tunable names are:
132
133            delay-busy: when busy, nsecs of delay before retry.
134
135            retries-timeout: retries to perform on an IO timeout.
136
137

EXAMPLES

139         The following is an example of a global ssd-config-list property:
140
141            ssd-config-list =
142               "SUN     T4", "delay-busy:600, retries-timeout:6",
143               "SUN     StorEdge_3510", "retries-timeout:3";
144
145

FILES

147       ssd.conf              Driver configuration file
148
149
150       /dev/dsk/cntndnsn     block files
151
152
153       /dev/rdsk/cntndnsn    raw files
154
155
156       cn                    is the controller number on the system.
157
158
159       tn                    7-bit  disk  loop identifier, such as switch set‐
160                             ting
161
162
163       dn                    SCSI lun  n
164
165
166       sn                    partition n (0-7)
167
168

SEE ALSO

170       sar(1), format(1M), iostat(1M), ioctl(2), lseek(2),  open(2),  read(2),
171       write(2), scsi(4)driver.conf(4), cdio(7I), dkio(7I)
172
173
174       ANSI Small Computer System Interface-2 (SCSI-2)
175
176
177       ANSI X3.272-1996, Fibre Channel Arbitrated Loop (FC-AL)
178
179
180       Fibre Channel - Private Loop SCSI Direct Attach (FC-PLDA)
181

DIAGNOSTICS

183         Error for command '<command name>' Error Level: Fatal Requested Block <n>,
184         Error  Block: <m>, Sense Key: <sense key name>, Vendor '<vendor name>':
185         ASC = 0x<a> (<ASC name>), ASCQ = 0x<b>, FRU = 0x<c>
186
187
188
189
190       The  command indicated by <command name> failed. The Requested Block is
191       the block where the transfer started and the Error Block is  the  block
192       that caused the error. Sense Key, ASC, and ASCQ information is returned
193       by the target in response to a request sense command.
194
195         Check Condition on REQUEST SENSE
196
197
198
199
200       A REQUEST SENSE command completed with a check condition. The  original
201       command will be retried a number of times.
202
203         Label says <m> blocks Drive says <n> blocks
204
205
206
207
208       There is a discrepancy between the label and what the drive returned on
209       the READ CAPACITY command.
210
211         Not enough sense information
212
213
214
215
216       The request sense data was less than expected.
217
218         Request Sense couldn't get sense data
219
220
221
222
223       The REQUEST SENSE command did not transfer any data.
224
225         Reservation Conflict
226
227
228
229
230       The drive was reserved by another initiator.
231
232         SCSI transport failed: reason 'xxxx' : {retrying|giving up}
233
234
235
236
237       The host adapter has failed to transport a command to  the  target  for
238       the   reason stated. The driver will either retry the command or, ulti‐
239       mately, give up.
240
241         Unhandled Sense Key <n>
242
243
244
245
246       The REQUEST SENSE data included an invalid sense key.
247
248         Unit not Ready. Additional sense code 0x<n>
249
250
251
252
253       The drive is not ready.
254
255         corrupt label - bad geometry
256
257
258
259
260       The disk label is corrupted.
261
262         corrupt label - label checksum failed
263
264
265
266
267       The disk label is corrupted.
268
269         corrupt label - wrong magic number
270
271
272
273
274       The disk label is corrupted.
275
276         device busy too long
277
278
279
280
281       The drive returned busy during a number of retries.
282
283         disk not responding to selection
284
285
286
287
288       The drive was probably powered down or died.
289
290         i/o to invalid geometry
291
292
293
294
295       The geometry of the drive could not be established.
296
297         incomplete read/write - retrying/giving up
298
299
300
301
302       There was a residue after the command completed normally.
303
304         logical unit not ready
305
306
307
308
309       The drive is not ready.
310
311         no bp for disk label
312
313
314
315
316       A bp with consistent memory could not be allocated.
317
318         no mem for property
319
320
321
322
323       Free memory pool exhausted.
324
325         no memory for disk label
326
327
328
329
330       Free memory pool exhausted.
331
332         no resources for dumping
333
334
335
336
337       A packet could not be allocated during dumping.
338
339         offline
340
341
342
343
344       Drive went offline; probably powered down.
345
346         requeue of command fails<n>
347
348
349
350
351       Driver attempted to retry a command and experienced a transport error.
352
353         ssdrestart transport failed <n>
354
355
356
357
358       Driver attempted to retry a command and experienced a transport error.
359
360         transfer length not modulo <n>
361
362
363
364
365       Illegal request size.
366
367         transport rejected <n>
368
369
370
371
372       Host adapter driver was unable to accept a command.
373
374         unable to read label
375
376
377
378
379       Failure to read disk label.
380
381         unit does not respond to selection
382
383
384
385
386       Drive went offline; probably powered down.
387
388
389
390SunOS 5.11                        9 Aug 2008                           ssd(7D)
Impressum