2 .\" Copyright (c) 2008, Sun Microsystems, Inc. All Rights Reserved.
3 .\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
4 .\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
5 .\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
6 .TH CFGADM_FP 8 "Jan 10, 2008"
8 cfgadm_fp \- driver specific commands for cfgadm
12 \fB/usr/sbin/cfgadm\fR [\fB-f\fR] [\fB-n\fR | \fB-y\fR] [\fB-v\fR] [\fB-o\fR \fIhardware_options\fR]
13 \fB-c\fR \fIfunction\fR \fIap_id\fR [\fIap_id\fR]
18 \fB/usr/sbin/cfgadm\fR [\fB-v\fR] [\fB-a\fR] [\fB-s\fR \fIlisting_options\fR]
19 [\fB-o\fR \fIhardware_options\fR] [\fB-l\fR [\fIap_id\fR]]
24 \fB/usr/sbin/cfgadm\fR [\fB-v\fR] [\fB-o\fR \fIhardware_options\fR] \fB-h\fR [\fIap_id\fR]
30 The \fBfp\fR port driver plug-in \fB/usr/lib/cfgadm/fp.so.1\fR provides the
31 functionality for Fibre Channel Fabric device node management through
32 \fBcfgadm\fR(8). \fBcfgadm\fR operates on attachment points. Attachment points
33 are locations in the system where hardware resources can be dynamically
34 reconfigured. Refer to \fBcfgadm\fR(8) for additional details on attachment
38 For Fibre Channel Fabric device node management, each \fBfp\fR port node is
39 represented by an attachment point in the device tree. In addition, each Fibre
40 Channel device is represented by a dynamic attachment point. Attachment points
41 are named through \fBap_ids\fR. Two types of \fBap_ids\fR are defined: logical
42 and physical. The physical \fBap_id\fR is based on the physical pathname. The
43 logical \fBap_id\fR is a shorter, more user-friendly name. For \fBfp\fR port
44 nodes, the logical \fBap_id\fR is the corresponding disk controller number. For
45 example, \fBc0\fR is a typical logical \fBap_id\fR.
48 Fibre Channel devices are named with a port World Wide Name (WWN). If a disk
49 device is connected to controller \fBc0\fR, its \fBap_id\fR can be:
60 where \fB50020f2300006077\fR identifies the port WWN of a specific Fibre
64 Each device on the Fibre Channel private loop port, Fabric port or public loop
65 port is probed and made available to Solaris by default. Devices connected to
66 the Fibre Channel Fabric port or public loop port can be made unavailable to
67 Solaris by initiating an application or an end user operation. The operation is
68 similar to the hot unplugging of devices by way of management user interfaces.
69 Applications or users can use the \fB/usr/lib/cfgadm/fp.so.1\fR library to
70 enable \fBlibcfgadm\fR to provide interfaces to accomplish this task.
73 The list of currently connected Fabric devices is generated in the form of the
77 A simple listing of attachment points in the system includes attachment points
78 at \fBfp\fR port nodes but not Fibre Channel devices. The following example
79 uses the \fB-a\fR flag to the list option (\fB-l\fR) to list Fibre Channel
85 Ap_Id Type Receptacle Occupant Condition
86 c0 fc-fabric connected configured unknown
87 c1 fc-private connected configured unknown
88 c2 fc-pt_to_pt connected configured unknown
89 c3 fc connected unconfigured unknown
90 sysctrl0:slot0 cpu/mem connected configured ok
91 sysctrl0:slot1 sbus-upa connected configured ok
98 The following example lists Fibre Channel devices connected to \fBfp\fR ports.
103 Ap_Id Type Receptacle Occupant Condition
104 c0 fc-fabric connected configured unknown
105 c0::50020f2300006077 disk connected configured unknown
106 c0::50020f23000063a9 disk connected configured unknown
107 c0::50020f2300005f24 disk connected configured unknown
108 c0::50020f2300006107 disk connected configured unknown
109 c1 fc-private connected configured unknown
110 c1::220000203708b69c disk connected configured unknown
111 c1::220000203708ba7d disk connected configured unknown
112 c1::220000203708b8d4 disk connected configured unknown
113 c1::220000203708b9b2 disk connected configured unknown
114 c2 fc-pt_to_pt connected configured unknown
115 c2::500104f000937528 tape connected configured unknown
116 c3 fc connected unconfigured unknown
117 sysctrl0:slot0 cpu/mem connected configured ok
118 sysctrl0:slot1 sbus-upa connected configured ok
125 In this example, the \fBfc-fabric\fR type of \fBap_id\fR \fBc0\fR indicates
126 that the \fBfp\fR port is connected to Fabric. For an \fBfp\fR port with a
127 Fabric-related type such as \fBfc-fabric\fR and \fBfc-public\fR, device node
128 creation happens by default at the boot time and can be managed by the
129 \fBcfgadm\fR configure and unconfigure operations. The \fBfc-private\fR type
130 of \fBap_id c1\fR indicates that \fBfp\fR port is connected to private-loop and
131 device node creation happens by default as well. The \fBfc-pt_to_pt\fR type of
132 \fBap_id c2\fR indicates that the \fBfp\fR port is directly connected to
133 another \fBN_port\fR and device node creation also happens by default. The
134 \fBfc\fR type of \fBap_id c3\fR indicates that nothing is attached to \fBfp\fR
135 port \fBc2\fR. The Type field of a Fibre Channel device \fBap_id\fR shows the
136 SCSI device type of LUN 0 in the device.
139 A Fibre Channel device with multiple FCP SCSI LUNs is configured into Solaris
140 and each \fBFCP SCSI LUN\fR is available as a Solaris device. Suppose that
141 ap_ids \fBc0::50020f2300006077\fR and \fBc0::50020f23000063a9\fR represent
142 Fibre Channel devices with multiple \fBFCP SCSI LUN\fRs.
145 The following example shows how to list ap_ids with \fBFCP\fR \fBSCSI\fR
146 \fBLUN\fR information:
150 # \fBcfgadm -al -o show_SCSI_LUN\fR
151 Ap_Id Type Receptacle Occupant Condition
152 c0 fc-fabric connected configured unknown
153 c0::50020f2300006077,0 disk connected configured unknown
154 c0::50020f2300006077,1 disk connected configured unknown
155 c0::50020f2300006077,2 disk connected configured unknown
156 c0::50020f2300006077,3 disk connected configured unknown
157 c0::50020f23000063a9,0 disk connected configured unknown
158 c0::50020f23000063a9,1 disk connected configured unknown
159 c0::50020f23000063a9,2 disk connected configured unknown
160 c0::50020f23000063a9,3 disk connected configured unknown
161 c0::50020f2300005f24,0 disk connected unconfigured unknown
162 c0::50020f2300005f24,1 disk connected unconfigured unknown
163 c0::50020f2300006107,0 disk connected unconfigured unknown
164 c0::50020f2300006107,1 disk connected unconfigured unknown
165 c1 fc-private connected configured unknown
166 c1::220000203708b69c,0 disk connected configured unknown
167 c1::220000203708ba7d,0 disk connected configured unknown
168 c1::220000203708b8d4,0 disk connected configured unknown
169 c1::220000203708b9b2,0 disk connected configured unknown
170 c2 fc-pt_to_pt connected configured unknown
171 c2::500104f000937528,0 tape connected configured unknown
172 c3 fc connected unconfigured unknown
179 In this example, the \fBap_id c0::50020f2300006077,0\fR identifies the \fBFCP
180 SCSI LUN 0\fR of the Fibre Channel device which is represented by port \fBWWN
181 50020f2300006077\fR. The Fibre Channel device is reported to have 4 \fBFCP SCSI
182 LUN\fRs and they are all configured. \fB4 FCP SCSI LUN\fR level ap_ids
183 associated with port \fBWWN 50020f2300006077\fR are listed. The listing also
184 displays \fBFCP SCSI LUN\fRs for unconfigured Fibre Channel devices. The Fibre
185 Channel device represented by \fBc0::50020f2300005f24\fR is reported to have
186 two \fBFCP SCSI LUN\fRs. The configure operation \fBon c0::50020f2300005f24\fR
187 creates two Solaris devices. The \fBType\fR field of \fBFCP\fR \fBSCSI\fR
188 \fBLUN\fR level ap_ids show the \fBSCSI\fR device type of each \fBLUN\fR. When
189 a Fibre Channel device has different device type \fBLUN\fRs, the \fBType\fR
193 The receptacle and occupant state for attachment points at the \fBfp\fR port
194 have the following meanings:
202 One or more devices configured on the \fBfp\fR port
222 \fBfp\fR port quiesced (IO activity is suspended)
242 No devices configured on the \fBfp\fR port
247 The state for individual Fibre Channel devices on an \fBfp\fR port:
255 Device is configured into Solaris and is available for use
265 \fBfp\fR port to which the device is connected to is active
275 \fBfp\fR port to which the device is attached is quiesced
285 Device is available to be configured
290 The \fBcondition\fR field for attachment points at the \fBfp\fR port has the
299 An error condition has prevented the \fBfp\fR port from being able to detect
300 the presence or type of a Fibre Channel connection.
305 The \fBcondition\fR field for individual Fibre Channel devices on an \fBfp\fR
306 port has the following meanings:
314 An error is encountered while probing a device on Fabric.
324 A device was configured on a host and its state as seen by Solaris appears to
325 be normal (i.e., online) but it is either not currently present or visible in
326 the fabric or its presence could not be verified due to an error condition on
327 the local port through which the device was configured.
337 A device has been configured on the host, but is currently offline or failed.
342 The unknown \fBcondition\fR indicates that probing a device on Fabric completed
343 without an error and the device state within Solaris host is normal if the
344 device was configured previously. The internal condition of the device cannot
349 \fBcfgadm\fR defines several types of operations in addition to listing
350 (\fB-l\fR). These operations include invoking configuration state changes and
351 obtaining configuration administration help messages (\fB-h\fR).
354 The following options are supported:
358 \fB\fB-c\fR \fIfunction\fR\fR
362 The following generic commands are defined for the \fBfp\fR-transport-specific
365 For Fibre Channel device attachment points on the \fBfc-fabric\fR type \fBfp\fR
366 port attachment point, the following configuration state change operations are
371 \fB\fBconfigure\fR\fR
375 Configure a connected Fibre Channel Fabric device to a host. When a Fibre
376 Channel device is listed as an unknown type in the output of the list operation
377 the device might not be configurable. No attempt is made to configure devices
378 with unknown types. The force option (\fB-f\fR) can be used to force the
379 \fBfp\fR port driver plug-in to make an attempt to configure any devices. Any
380 errors in the process are reported. By default, each FCP SCSI LUN that is
381 discovered on a Fibre channel Fabric device is configured. However, FCP SCSI
382 LUNs that are specified in the "pwwn-lun-blacklist" property in the
383 \fBfp.conf\fR file will remain unconfigured. The FCP SCSI LUN level listing
384 reflects the state of such FCP SCSI LUNs. They stay in the "unconfigured" state
385 after reboot or Solaris Dynamic Reconfiguration on the controller that they are
386 connected through. Refer to \fBfp\fR(7D) for additional details on the
387 "pwwn-lun-blacklist" property.
393 \fB\fBunconfigure\fR\fR
397 Unconfigure a Fibre Channel Fabric device from a host. This device stays
398 unconfigured until the next reboot or Solaris Dynamic Reconfiguration on the
399 controller that the device is connected, at which time all fabric devices are
400 automatically enumerated. The default behavior may be changed through the use
401 of the "manual_configuration_only" property in the \fBfp.conf\fR file. If the
402 property is set, the device remains unconfigured after reboot. Refer to
403 \fBfp\fR(7D) for additional details on the "manual_configuration_only"
407 For Fibre Channel private loop devices and \fBN_Port\fR point-to-point devices,
408 the \fBconfigure\fR command returns success without doing any operation. The
409 \fBunconfigure\fR command is not supported on the private loop devices and
410 \fBN_Port\fR point-to-point devices. The private loop devices and \fBN_Port\fR
411 point-to-point devices are configured by Solaris Fibre Channel drivers by
412 default and are not managed through end user- or application-initiated
413 operations. The \fBpwwn-lun-blacklist\fR property in the \fBfp.conf\fR file
414 is applied to the private loop device and \fBN_Port\fR point-to-point device in
415 the same way it is applied to a Fabric device.
425 Force the \fBconfigure\fR change state operation to occur irrespective of the
426 \fBcondition\fR or \fBtype\fR. Refer to the above description of the
427 \fBconfigure\fR change state operation.
433 \fB\fB-h\fR \fIap_id\fR\fR
437 Obtain \fBfp\fR\(emtransport-specific help. Specify any \fBfp\fR attachment
444 \fB\fB-o\fR \fIhardware_options\fR\fR
448 The following hardware options are supported.
456 Lists ap_ids associated with each FCP SCSI LUN for discovered Fibre Channel
457 devices when specified with the \fBlist\fR option \fB-al\fR. Refer to the
458 previously mentioned description and example of FCP SCSI LUN level listing.
459 Device node creation is not supported on the FCP SCSI LUN level. See
463 All Fibre Channel devices are available to Solaris by default. Enabling only a
464 subset of Fabric devices available to Solaris by default can be accomplished by
465 setting the property "manual_configuration_only" in \fB/kernel/drv/fp.conf\fR
466 file. When "manual_configuration_only" in \fBfp.conf\fR is set, all Fabric
467 devices are not available to Solaris unless an application or an end user had
468 previously requested the device be configured into Solaris. The \fBconfigure\fR
469 state-change command makes the device available to Solaris. After a successful
470 \fBconfigure\fR operation on a Fabric device, the associated links are added to
471 the \fB/dev\fR namespace. The \fBunconfigure\fR state-change command makes a
472 device unavailable to Solaris.
474 When a Fibre Channel Fabric device is configured successfully to a host using
475 the \fB-c\fR \fBconfigure\fR operation, its physical \fBap_id\fR is stored in a
476 repository. When a Fibre Channel Fabric device is unconfigured using the
477 \fB-c\fR \fBunconfigure\fR operation, its physical \fBap_id\fR is deleted from
478 the same repository. All fabric devices are automatically enumerated by default
479 and the repository is used only if the \fBfp.conf\fR
480 "manual_configuration_only" property is set. Refer to \fBfp\fR(7D) for
481 additional details on the "manual_configuration_only" property.
483 You can specify the following commands with the \fB-c\fR option to control the
484 update behavior of the repository:
488 \fB\fBforce_update\fR\fR
492 For \fBconfigure\fR, the attachment point is unconditionally added to the
493 repository; for \fBunconfigure\fR, the attachment point is unconditionally
500 \fB\fBno_update\fR\fR
504 No update is made to the repository regardless of the operation.
507 These options should not be used for normal \fBconfigure\fR and
508 \fBunconfigure\fR operations. See \fBWARNINGS\fR.
510 When a Fibre Channel device has multiple \fBFCP SCSI LUN\fRs configured and any
511 Solaris device associated with its \fBFCP SCSI LUN\fR is in the unusable
512 condition, the whole Fibre Channel device is reported as unusable. The
513 following option with the \fB-c\fR unconfigure command removes only Solaris
514 devices with the unusable condition for a Fibre Channel device.
518 \fB\fBunusable_SCSI_LUN\fR\fR
522 For \fBunconfigure\fR operation, any offlined device nodes for a target device
531 \fB\fB-s\fR \fIlisting_options\fR\fR
535 Refer to \fBcfgadm\fR(8) for usage information.
541 \fB\fB-t\fR \fIap_id\fR\fR
545 No test commands are available at present.
551 \fB\fB-x\fR \fIhardware_function\fR\fR
555 No hardware specific functions are available at present.
560 All other options have the same meaning as defined in the \fBcfgadm\fR(8) man
564 \fBExample 1 \fRUnconfiguring a Disk
567 The following command unconfigures a disk:
572 # cfgadm -c unconfigure c0::210000203708b606
578 \fBExample 2 \fRUnconfigure all the Configured Disks under Single Attachment
582 The following command unconfigures all configured disks under the attachment
588 # cfgadm -c unconfigure c0
594 \fBExample 3 \fRConfiguring a Disk
597 The following command configures a disk:
602 # cfgadm -c configure c0::210000203708b606
608 \fBExample 4 \fRConfigure all the Unconfigured Disks under Single Attachment
612 The following command configures all unconfigured disks under the attachment
618 # cfgadm -c configure c0
624 \fBExample 5 \fRRemoving the Fibre Channel Fabric Device Attachment Point from
628 The following command unconditionally removes the fibre channel fabric device
629 attachment point from the Fabric device repository.
634 # cfgadm -c unconfigure -o force_update c0::210000203708b606
640 \fBExample 6 \fRRemoving Offlined Solaris Device Nodes for a Target Device
643 The following command removes offlined Solaris device nodes for a target
649 # cfgadm -c unconfigure -o unusable_SCSI_LUN c0::210000203708b606
658 \fB\fB/usr/lib/cfgadm/fp.so.1\fR\fR
662 Hardware-specific library for Fibre Channel Fabric device node management.
668 \fB\fB/etc/cfg/fp/fabric_WWN_map\fR\fR
672 Repository of physical \fBap_id\fRs of Fabric devices currently configured. It
673 is used only to reconfigure those Fabric devices at boot time. This repository
674 is only used when the "manual_configuration_only" \fB/kernel/drv/fp.conf\fR
681 \fB\fB/etc/rcS.d/fdevattach\fR\fR
685 Reconfigures Fabric device(s) of which physical \fBap_id\fR is listed in
686 \fB/etc/cfg/fp/fabric_WWN_map\fR on boot time.
692 \fBsvcs\fR(1), \fBcfgadm\fR(8), \fBsvcadm\fR(8), \fBconfig_admin\fR(3CFGADM),
693 \fBlibcfgadm\fR(3LIB), \fBattributes\fR(5), \fBsmf\fR(5), \fBfp\fR(7D)
697 Do not use hardware-specific options for the repository update under normal
698 \fBconfigure\fR/\fBunconfigure\fR operations. The hardware-specific options are
699 expected to be used when the node creation of a Fabric device fails at boot
700 time and the error condition is considered to be permanent. The
701 \fBunconfigure\fR command with \fBforce_update\fR hardware-specific option
702 unconditionally removes the attachment point of a failing Fabric device from
707 For devices with unknown or no SCSI device type (for example, a Fibre Channel
708 Host Bus Adapter), the \fBconfigure\fR operation might not be applicable.
711 The \fBconfigure\fR and \fBunconfigure\fR commands operate on the Fibre Channel
712 device level which is represented by port WWN ap_id. If a Fibre Channel device
713 has multiple FCP SCSI LUNs configured, the \fBconfigure\fR command on the
714 associated port WWN ap_id results in creating a Solaris device for each \fBFCP
715 SCSI LUN\fR unless it is specified in the "pwwn-lun-blacklist" property in the
716 \fBfp.conf\fR file. The \fBunconfigure\fR command removes all Solaris devices
717 associated with the port WWN ap_id. The \fBFCP SCSI LUN\fR level ap_id is not
718 valid for the \fBconfigure\fR and \fBunconfigure\fR commands.
721 The deprecated \fBshow_FCP_dev\fR option has been replaced by the new
722 \fBshow_SCSI_LUN\fR option, and the deprecated \fBunusable_FCP_dev\fR option
723 has been replaced by the new \fBunusable_SCSI_LUN\fR option.
726 The \fBcfgadm_fp\fR service is managed by the service management facility,
727 \fBsmf\fR(5), under the service identifier:
731 svc:/system/device/fc-fabric:default
738 Administrative actions on this service, such as enabling, disabling, or
739 requesting restart, can be performed using \fBsvcadm\fR(8). The service's
740 status can be queried using the \fBsvcs\fR(1) command.
743 No administrative actions on this service are required for Fabric device
744 configuration once this service is started on boot time.