Solaris SFS Driver User Manual Last Updated June 14, 2007
Copyright© 2007 Emulex Corporation. All rights reserved worldwide. No part of this document may be reproduced by any means nor translated to any electronic medium without the written consent of Emulex Corporation. Information furnished by Emulex Corporation is believed to be accurate and reliable. However, no responsibility is assumed by Emulex Corporation for its use; or for any infringements of patents or other rights of third parties which may result from its use.
Installation ..............................................................................................1 Introduction .............................................................................................................................. 1 Compatibility ............................................................................................................ 1 Known Issues ..........................................................................................................
Viewing HBA Information ....................................................................................... 41 Viewing Discovery Information ........................................................................ 41 Viewing Host Information................................................................................. 42 The Host Information Tab ................................................................................ 42 The Host Driver Parameters Tab ..........................................
Out-of-Band SAN Management ............................................................................. 77 Adding a Single Host ....................................................................................... 78 Adding a Range of Hosts................................................................................. 79 Removing Hosts .............................................................................................. 80 HBAnyware Security.....................................................
get_boot_rev ................................................................................................. 112 download_boot ........................................................................... 112 get_dump_size .............................................................................................. 112 force_dump ................................................................................................... 112 get_dump <-t filename.txt or -b filename.bin> ..................
Console and Log Messages ................................................................................................ 139 Introduction.......................................................................................................... 139 Severity Levels .............................................................................................. 140 Message Log Example .................................................................................. 140 Miscellaneous Events ....................
Installation Introduction Compatibility The StorEdge SAN Foundation Software (SFS) driver and utilities support the following operating systems: • Solaris 8 SPARC • Solaris 9 SPARC • Solaris 10 SPARC • Solaris 10 x64 and x86 The following table specifies the host bus adapters (HBAs) supported by the Solaris SFS driver and the Emulex Fibre Channel Adapter Utilities (FCA Utilities).
Known Issues Minimum Driver for Firmware Installation on LPe11000 and LPe11002 HBAs You cannot install firmware version 2.70 or later on an LPe11000 or an LPe11002 HBA that is running a driver version earlier than 2.11i (Sun patch revision -12). (If you are installing driver version 2.12 [Sun patch revision -15] or later, continue reading the next section.) Special Circumstances for Installing Solaris SFS Driver Version 2.12 or later If you want to update the driver to version 2.
Installing the Solaris SFS Driver Caution: Before installing the Emulex utilities package, you must first install the Sun StorEdge SAN Foundation Software package and all the recommended patches as described in the Sun StorEdge SAN Foundation Software Installation Guide provided by Sun. Downloading and Installing the Driver for Solaris 8 or 9 The Emulex FCA driver and the Solaris SFS prerequisites can be acquired in two ways.
b. Go to http://sunsolve.sun.com/pub-cgi/show.pl?target=patchpage. Enter and download the following required patches: c. • 113040 • 119914 • 113043 Follow the instructions to install each patch. d.
Installing the FCA Utilities and the HBAnyware Utility Unpacking the Utility Files The FCA Utilities and the HBAnyware utility are packaged together in one application kit tar file. To unpack the tar file: 1. Log in as root, or su to root. 2. Copy the application kit tar file from your distribution medium into a directory, referred to here as . The .tar file is named something similar to Solaris-3.2a13-1.01c-1a.tar. 3.
Prerequisites • Before installing the Emulex emlxu utilities package, you must completely install: • The Sun StorEdge SAN Foundation Software package. • All the recommended patches as described in the Sun StorEdge SAN Foundation Software Installation Guide provided by Sun. • The Emulex-Sun Fibre Channel adapter SUNWemlxs driver package. Procedure To install the utilities kit using the emlxu_install script: 1. Untar the emlxu_kit-1.01c-.tar file. tar xvf emlxu_kit-1.01c-.
You do not need to reboot your system to run a utility program, but you must either enter the program’s full path name, or add the package's bin directory (/opt/EMLXemlxu/bin) to your environment’s search path. To use the man pages provided by the package, you must also add the package's man directory (opt/EMLXemlxu/man) to your environment's man path.
6. When prompted by pkgadd, choose to install the HBAnyware utility. 7. When prompted by pkgadd, answer the HBAnyware installation questions. Installing the HBAnyware Utility with Web Launch Prerequisites Before installing the HBAnyware utility with Web Launch, ensure your systems meet the following requirements. • The system on which you are installing the Web Launch services package (the server) requires that the HTTP Web server be configured to handle the JNLP MIME file type. Follow these steps: a.
Installing the HBAnyware Utility Security Configurator Follow these instructions to install the Security Configurator on your system. Prerequisites • The HBAnyware utility must be installed on the system. • Java Runtime Environment: Version 5 of the Java Runtime Environment (JRE) must be installed. The lputil and HBAnyware utilities will not run under earlier versions of the JRE. The JRE and instructions for installation can be found at: http://java.sun.com/downloads/index.html.
Procedure To install the emlxu utilities package manually: 1. Log in as root, or su to root. 2. Copy the utilities kit from your distribution medium into a directory, referred to here as . The utilities kit is a .tar file named something similar to emlxu_kit-1.01c-sparc.tar. 3. Change to the directory where you put the kit tar file by typing: cd 4. Extract the installation images from the tar file by typing: tar xvf emlxu_kit-1.01c-sparc.tar 5.
3. Remove the emlxu utilities package by typing: emlxu_remove 4. The script locates the EMLXemlxu utilities package, and the following message is displayed: Note: If no package is installed, the following message is displayed: pkgrm: ERROR: no package associated with 5. You are prompted to remove the package with the following message: Do you want to remove this package? [y,n,?,q] 6. Enter y.
Configuration Introduction The HBAnyware utility is launched directly from your Web browser. The utility is client/server based and allows you to perform configuration, update and management tasks locally and remotely (inband - host systems on the same FC SAN or out-of-band - from IP addresses of remote machines). The HBAnyware Web Launch feature enables you to download and launch the HBAnyware user interface by specifying the URL of a server that is hosting the HBAnyware Web Launch software.
Driver Parameters • The emlxs.conf file contains all the parameters necessary to initialize the Solaris SFS driver. In the emlx.conf file, all adapter-specific parameters have emlxsX-prefix (where X is the driver instance number); e.g.setting emlxs0-link-speed=4 makes 4 the default link speed setting for the zero instance of the driver. Changes to the emlxs.conf file require you to unload and reload the driver. • The lpfc.
Solaris SFS and lpfc Driver Parameter Cross-Reference Table Table 1: Solaris SFS and lpfc Driver Parameter Cross-Reference Solaris SFS/ HBAnyware Parameter Solaris SFS/HBAnyware Min/Max, Defaults and Description Related lpfc Parameter ack0 0 = Off 1 = On Default: 0 Description: Use ACK0 for class 2. If ACK0 is 1, the HBA tries to use ACK0 when running Class 2 traffic to a device. If the device doesn’t support ACK0, then the HBA uses ACK1. If ACK0 is 0, only ACK1 is used when running Class 2 traffic.
Table 1: Solaris SFS and lpfc Driver Parameter Cross-Reference (Continued) Solaris SFS/ HBAnyware Parameter Solaris SFS/HBAnyware Min/Max, Defaults and Description Related lpfc Parameter cr-delay Min:0 Max:63 Default:0 Description: Specifies a count of milliseconds after which an interrupt response is generated if the cr-count has not been satisfied. This value is set to 0 to disable the Coalesce Response feature as default.
Table 1: Solaris SFS and lpfc Driver Parameter Cross-Reference (Continued) Solaris SFS/ HBAnyware Parameter Solaris SFS/HBAnyware Min/Max, Defaults and Description Related lpfc Parameter network-on Min:0 (Disables) Max:1 (Enables) Default:1 Description: Enables or disables IP networking support in the driver. network-on Min:0 (Disables) Max:1 (Enables) Default:1 Description: Controls whether lpfc provides IP networking functionality over FC.
Table 1: Solaris SFS and lpfc Driver Parameter Cross-Reference (Continued) Solaris SFS/ HBAnyware Parameter Solaris SFS/HBAnyware Min/Max, Defaults and Description Related lpfc Parameter lpfc Min/Max, Default and Description pm-support 0 = Disables power management support in the driver. 1 = Enables power management support in the driver.
Using the HBAnyware Utility Starting the HBAnyware Utility Note: The HBAnyware utility can only discover and manage remote HBAs on hosts running the HBAnyware utility’s elxhbamgr daemon. Note: Remote in-band capabilities of the HBAnyware utility are subject to fabric zoning configuration. Remote hosts you want to discover and manage using the HBAnyware utility must be in the same zone or discovered and managed out-of-band through an Ethernet connection. To start the HBAnyware utility: 1.
Starting the HBAnyware Utility from the Command Line To launch the HBAnyware utility from the command line: 1. Type /usr/sbin/hbanyware/hbanyware. This starts the HBAnyware utility running in in-band access. You can also start the HBAnyware utility running in out-of-band access by adding an argument in the form “h=”. The argument may be either the IP address of the host or its system name.
The HBAnyware Utility Window Element Definitions The HBAnyware utility window contains five basic components: the menu bar, the toolbar, the discoverytree, the property tabs and the status bar. Figure 1: HBAnyware Utility Window with Element Call Outs Note: The element you select in the discovery-tree determines whether a menu item or toolbar icon is active. For example, if you select the local host or other system host, the Reset Adapter item on the Adapter menu is unavailable.
The Toolbar Buttons The toolbar buttons perform the following tasks: Click the Rediscover button to refresh the discovery-tree display. Click the Reset button to reset the selected HBA. Sort Toolbar Buttons You can sort discovered adapters by host name or fabric addresses. You can also choose to display only local or remote HBAs. See page 40 for details on sort buttons.
Discovery-Tree Icons Discover- tree icons represent the following: This icon represents the local host. This icon represents other hosts connected to the system. A green HBA icon with black descriptive text represents an online HBA. A red HBA icon with red descriptive text represents an offline or otherwise temporarily inaccessible HBA. Several situations could cause the HBA to be offline or inaccessible: • The HBA on a local host is not connected to the network, but is still available for local access.
Using the CLI Client The CLI Client is a console application named hbacmd. Each time you run this application from the command line, a single operation is performed. The first parameter of this command is the requested operation. When the specified operation is completed, the command prompt is displayed. Most operations retrieve information about an entity on the SAN and display that information on the console.
If you don’t know the IP address, but you know the host name, type: hbacmd h=cp-compaq8000 listHBAs If the host is unreachable, the command will return an error. CLI Client Command Reference Version Syntax: HBACMD Version Description: Shows the current version of the HBAnyware CLI client application. To view the version, type: hbacmd version Sample response: HBAnyware Command Line Interface: Version 3.0 Parameters: None.
HBAAttrib Syntax: HBACMD HBAAttrib Description: Shows a list of all attributes for the HBA with the specified WWPN.
Fabric Name : 10 00 00 60 69 50 15 25 Parameters: WWPN - The World Wide Port Name of the port. This port can be either local or remote. PortStat Syntax: HBACMD PortStat Description: Shows all port statistics for the HBA with the specified WWPN.
WWPN - The World Wide Port Name of any HBA local to the designated server. The HBA itself can be either local or remote. TargetMapping Syntax: HBACMD TargetMapping Description: Shows a list of mapped targets and the LUNs attached to each for the port with the specified WWPN.
Parameters: WWPN - The World Wide Port Name of the port. This port can be either local or remote. Download Syntax: HBACMD Download Description: Loads the specified firmware image to the HBA with the specified WWPN. To load the firmware image located in hdc190a4.dwc to an HBA with WWPN 10:00:00:00:c9:2e:51:2e, type: hbacmd download 10:00:00:00:c9:2e:51:2e hdc190a4.dwc Sample response for a successful download: Downloading hdc190a4.dwc to hba 10:00:00:00:c9:2e:51:2e Download Complete.
Parameters: WWPN - The World Wide Port Name of the HBA on which to set driver parameters. ctrlword - G = save the global parameter set. DriverParams Syntax: HBACMD DriverParams Description: Shows the name and values of each driver parameter for the selected HBA. To view the driver parameters for HBA 10:00:00:00:c9:2e:51:2e, type: hbacmd driverparams 10:00:00:00:c9:2e:51:2e Sample (abbreviated) response: Driver Params for 10:00:00:00:c9:4a:c5:90. Values in HEX format.
04 CrfIntrpt 0 1 0 0 1 5 05 CrfMsCnt 0 3f 0 0 1 5 06 CrfRspCnt 0 ff 0 0 1 5 07 DebugMask 0 efffffff 0 0 0 5 08 DisableAck0 0 1 0 0 1 5 09 DiscMethod 0 1 1 0 1 1 0a DiscoveryDelay 0 7 0 0 1 1 0b ElsRetryCount 1 ff 1 1 1 1 0c ElsRjtCount 0 ff 2d 2d 1 1 0d ElsTimeOut 0 1 0 0 1 1 0e EmulexOption 0 7fffffff d200 da00 1 0 0f EnableDPC 0 1 0 1 1 1 10 ErrRetryMax 0 fffffffe 1 1 1 1 11 FrameSizeMSB 0 8 0 0 1
Sample response: Set Driver Parameter log_verbose=3(g) for 10:00:00:00:c9:2e:51:2e Parameters: WWPN - The World Wide Port Name of the HBA whose Boot BIOS you want to modify. This HBA can be either local or remote. ctrlword - G = make change global, B = make change both permanent and global, N = make change neither permanent nor global param - The name of the parameter whose value you want to modify. You can only use the log_verbose, use_adisc and _nodev_tmo parameters.
Wakeup Syntax: HBACMD wakeup Description: Shows wakeup parameter data for the HBA specified by the WWPN.
SetBeacon Syntax: HBACMD setbeacon Description: Sets the current beacon status for the HBA specified by the WWPN.
Count - The number of times to run the test. StopOnError - Should the test be halted on Error? 0 = no halt, 1 = halt Loopback Syntax: HBACMD loopback Description: Runs the loop test on the HBA specified by the WWPN. Note: Only external Loopback tests must be run out-of-band. To run the loop test for HBA 10:00:00:00:c9:2e:51:2e, type: hbacmd loopback 10:00:00:00:c9:2e:51:2e 1 10 0 Sample response: Running Loopback: polling for results......
PersistentBinding Syntax: HBACMD PersistentBinding Description: Queries the presence of any persistent binding that may exist for the specified WWPN. The is used to query either the configured or live state of any binding that may be present.
ID - Target WWPN if bindtype = P. Target WWNN if bindtype = N. Target D_ID if bindtype = D scsibus - Bus number of SCSI device. scsitarget - Target number of SCSI device. RemoveAllPersistentBinding Syntax: HBACMD RemoveAllPersistentBinding Description: Removes all persisting bindings associated with the referenced HBA.
BindingCapabilities Syntax: HBACMD BindingCapabilities Description: Displays the binding capabilities present at the referenced HBA. To view the binding capabilities at 10:00:00:00:c9:21:5e:21, enter: hbacmd bindingcapabilities 10:00:00:00:c9:21:5e:21 Sample response: Binding Capability for 10:00:00:00:c9:2e:51:2e Can bind to D_IDCan bind to WWPN Can bind to WWNN Can bind AUTOMAP Can bind CONFIGURED Parameters: WWPN - The World Wide Port Name of the HBA whose binding capabilities are being queried.
Discovering HBAs Local and remote HBAs are discovered automatically when you launch the HBAnyware utility. Initially, both local and remote HBAs are displayed. You can also discover HBAs on out-of-band (OOB) hosts. For more information, see Out-of-Band Access on page 23. Note: The HBAnyware utility must be installed and the elxhbamgr process(es) must be running on all remote hosts that you want to discover and manage.
Configuring Discovery Settings Use the HBAnyware Discovery Settings dialog box to configure several discovery server parameters. You can define when to start the discovery server, when to refresh in-band and out-of-band discoveries and when to remove previously discovered HBAs that are no longer being discovered. Figure 5: HBAnyware Utility, HBA Discovery Settings Dialog Box To configure discovery settings: 1. Start the HBAnyware utility. 2. From the menu bar, select Discovery/Modify Settings.
Sorting HBAs Sort discovered HBAs by host name, fabric name, HBA name, target name and LUN number. You can also choose to view local HBAs or remote HBAs. By default, both local and remote HBAs are sorted by host name/fabric name. To sort HBAs: 1. Start the HBAnyware utility. 2. Switch between host name or fabric ID in one of two ways: • From the menu bar: click View, then click Sort by Host Name or Sort by Fabric ID. The current adapter display mode is checked.
Viewing HBA Information Viewing Discovery Information The Discovery Information area contains a general summary of the discovered elements. The Host or Fabric icon, depending upon which view you select, is the root of the discovery-tree, but it does not represent a specific network element. Expanding it will reveal all hosts, LUNs, targets and HBAs that are visible on the storage area network (SAN). To view the discovery information: 1. Start the HBAnyware utility. 2.
Viewing Host Information There are two tabs that show host information: the Host Information tab and the host Driver Parameters tab. The Host Information tab is read-only. The host Driver Parameters tab enables you to view and define HBA driver settings for a specific host. To view the Host Information and Driver Parameters tabs: 1. Start the HBAnyware utility. 2. Do one of the following: • From the menu bar, click View, then click Sort by Host Name.
The Host Driver Parameters Tab The Host Driver Parameters tab (Figure 8) enables you to view and edit the HBA driver settings contained in a specific host. The host driver parameters are global values and apply to all HBAs in that host unless they are overridden by parameters assigned to a specific HBA using the HBA Driver Parameters tab.
Viewing General HBA Attributes The General tab contains general attributes associated with the selected HBA. To view general attributes: 1. Start the HBAnyware utility. 2. Select Host or Fabric sort. 3. Click an HBA in the discovery-tree. Figure 9: HBAnyware Utility, General Tab Adapter Summary Field Definitions • Model - The complete model name of the HBA. • Port WWN - The Port World Wide Name of the HBA. • Node WWN - the Node World Wide Name of the selected HBA.
Adapter Status Area Field Definitions State - The current operational state of the HBA: “Up” or “Down”. Link Status - The current link status between the HBA and the fabric. There are several possible states: • The “Operational” state indicates that the HBA is connected to the network and operating normally. • All other states indicate that the HBA is not connected to the network. Green HBA icons with red descriptive text indicate that the HBA is offline.
Viewing Detailed HBA Information The Adapter Details tab in the HBAnyware utility contains detailed information associated with the selected HBA. To view the detailed attributes: 1. Start the HBAnyware utility. 2. Select Host or Fabric sort. 3. Select an HBA in the discovery-tree. 4. Select the Adapter Details tab. Figure 10: HBAnyware Utility, Adapter Details Tab Adapter Details Field Definitions • Node Symbolic Name - The Fibre Channel name used to register the driver with the name server.
• • Class-1 provides a dedicated connection between a pair of ports confirmed with delivery or notification of nondelivery. • Class-2 provides a frame switched service with confirmed delivery or notification of nondelivery. • Class-3 provides a frame switched service similar to Class-2 but without notification of frame delivery or non-delivery. Supported FC4 Types - a 256-bit (8-word) map of the FC-4 protocol types supported by the port containing the selected HBA.
Discovery Information Field Definitions • Number of Hosts - The number of hosts discovered or seen by this host on the selected fabric. • Number of Fabrics - The number fabrics identified during discovery. • Number of Adapters - The number of HBAs discovered by this host on the selected fabric. • Number of Targets - The number of storage devices seen by this host on the selected fabric.
• Node WWN - A unique 64-bit number, in hexadecimal, for the target (N_PORT or NL_PORT). • Port WWN - A unique 64-bit number, in hexadecimal, for the fabric (F_PORT or FL_PORT). • OS Device Name - The operating system device name. Viewing LUN Information The LUN Information area contains information about the selected logical unit number (LUN). To view the LUN information: 1. Start the HBAnyware utility. 2. Do one of the following: • From the menu bar, click View, then click Sort by Host Name.
• • SCSI OS LUN - The SCSI identifier used by the operating system to map to the specific LUN. • OS Device Name - The name assigned by the operating system to the selected LUN. LUN Capacity Note: LUN capacity information is only provided when the LUN is a mass-storage (disk) device. Other devices like tapes and scanners, etc. do not display capacity. • Capacity - The capacity of the LUN, in megabytes. • Block Length - The length of a logical unit block in bytes.
Port Statistics Field Definitions • Tx Frames - Fibre Channel frames transmitted by this HBA port. • Tx Words - Fibre Channel words transmitted by this HBA port. • Tx KB Count - Fibre Channel kilobytes transmitted by this HBA port. • Tx Sequences - Fibre Channel sequences transmitted by this HBA port. • LIP count - The number of loop initialization primitive (LIP) events that have occurred for the port. This field is not supported if the topology is not arbitrated loop.
Viewing Firmware Information Use the Firmware tab to view current firmware versions, enable system BIOS and update firmware on remote and local HBAs. The update procedure is on page 55. To view the firmware information: 1. Start the HBAnyware utility. 2. Select Host or Fabric sort. 3. Select an HBA in the discovery-tree. 4. Select the Firmware tab.
• Update Firmware - Click to this button to display the HBAnyware Firmware Download dialog box. Using the HBAnyware Firmware Download dialog box, browse to the file you wish to download and download the file. See the “Update Firmware” topic on page 55 for more information. Viewing Target Mapping The Target Mapping tab in the HBAnyware utility enables you to view current target mapping and to set up persistent binding. You can also set up persistent binding using lputil. To view target mapping: 1.
Display Mode Radio Buttons • Show WWPN • Show WWNN • Show D_ID Target Mapping Buttons • Change Settings - Click to change the Bind Type, the mode used to persistently bind target mappings. The Mapped Target Settings window is displayed. Select the Bind Type (WWPN, WWNN, or D_ID) or set Automapping to Enabled to Disabled. • Add Binding - Click to add a persistent binding. • Bind New Target - Click to add a target that does not appear in the Persistent Binding table.
4. The following warning screen appears: Figure 17: HBAnyware Utility, Reset Warning Screen 5. Click Yes. The HBA resets. The reset may require several seconds to complete. While the HBA is resetting, the status bar shows “Reset in progress.” When the reset is finished, the status bar shows “Ready”. Updating Firmware The HBAnyware utility allows you to update firmware on remote and local HBAs. Prerequisites • The Solaris SFS driver is installed properly.
3. Select the Firmware tab. Figure 18: HBAnyware Utility, Firmware Tab 4. Click Update Firmware. The Firmware Download dialog box appears.
5. Click Browse. The Firmware File Selection dialog box appears. Figure 20: HBAnyware Utility, Firmware File Selection Dialog Box 6. Navigate to the extracted firmware file you wish to download. Select the file and click OK. A status bar shows the progress of the download and indicates when the download is complete. 7. Click Start Download.
Updating Firmware (Batch Mode) Loading firmware in batch mode differs from its non-batch counterpart in that it enables you to install firmware on multiple HBAs in a single step. Batch firmware loading is restricted to a single firmware file and to all accessible HBAs for which that file is compatible. Note: Stop other HBAnyware utility functions while batch loading is in progress.
6. When selection/deselection is complete, click Start Download. 7. Once downloading begins, the tree-view displays the progress. As firmware for a selected HBA is being downloaded, it appears orange in the tree-view. Once successful downloading is complete, the entry changes to green. If the download failed, the entry is changed to red. Figure 22: HBAnyware Utility, Firmware Download Dialog Box with Completed Download 8.
3. Select the Firmware tab. Figure 23: HBAnyware Utility, Firmware Tab with BIOS Disabled 4. To enable or disable the BIOS, click Enable. The button title changes from Enable to Disable. If you are updating x86 BootBIOS, you must also enable the HBA to boot from SAN using the BIOS utility; see the documentation that accompanies the boot code for more information.
Setting Driver Parameters for an HBA To change the driver parameters for an HBA: 1. Start the HBAnyware utility. 2. Do one of the following: • From the menu bar, click View, then click Sort by Host Name. • From the toolbar, click the Sort by Host Name button. 3. In the discovery-tree, select the HBA whose parameters you wish to change. 4. Select the Driver Parameters tab (see Figure 24). The parameter values for the selected HBA are displayed.
Restoring All Parameters to Their Earlier Values If you changed parameters, but did not click Apply and you want to restore the parameters to their last saved values, click Restore. Resetting All Default Values If you want to reset all parameter values to their default (factory) values, click Defaults. Setting Driver Parameters for a Host To change the driver parameters for HBAs installed in a host: 1. Start the HBAnyware utility. 2.
7. If you want the change to be temporary (causing the parameter to revert to its last permanent setting when the system is rebooted), check the "Make change temporary" box. This option is available only for dynamic parameters. 8. If you are making changes to multiple parameters, and you want all the changes to be temporary, check the "Make all changes temporary" box. This setting overrides the setting of the "Make change temporary" box. Only dynamic parameters can be made temporary. 9. Click Apply.
Creating the Batch Mode Driver Parameters File You can apply driver parameters for one HBA to other HBAs in the system using the Driver Parameters tab. When you define parameters for an HBA, you create a .dpv file. The .dpv file contains the parameters for that HBA. After you create the .dpv file, the HBAnyware utility enables you to apply the .dpv file parameters to multiple HBAs in the system, thereby simplifying multiple HBA configuration. To create the .dpv file: 1. Start the HBAnyware utility. 2.
3. Select the file whose parameters you wish to apply and click Open. The Batch Driver Parameter Update dialog box shows all the batch file compatible HBAs with a check mark beside them. Figure 27: HBAnyware Utility, Batch Driver Parameters Update Dialog Box 4. Click Start Updates. The HBAnyware utility Batch Driver Update dialog box shows the current status of the update.
3. Click the Target Mapping tab. All targets are displayed. Figure 28: HBAnyware Utility, Target Mapping Tab 4. The information for each currently defined mapping includes the world wide port name (WWPN), world wide node name (WWNN), device ID (D_ID), SCSI ID, or Bind Type. The type can be either 'PB', indicating that the mapping was the result of a persistent binding, or 'Auto', indicating that the target was automapped. In the Display Mode section, choose the display mode you want to use. 5.
To add a persistent binding: 1. In the Targets Table, click the target that you want to bind. 2. Click Add Binding. The Add Persistent Binding dialog box is displayed. Figure 29: HBAnyware Utility, Add Persistent Binding Dialog Box 3. Select the Bind Type that you want to use (WWPN, WWNN or D_ID). 4. Select the Bus ID and Target ID that you want to bind, and click OK.
To bind a target that does not appear in the Persistent Binding Table: 1. Click Bind New Target. The Bind New Target dialog box is displayed. Figure 30: HBAnyware Utility, Bind New Target Dialog Box 2. Click the type of binding you want to use, and type the WWPN, WWNN or D_ID you want to bind to the target. 3. Select the Bus ID and Target ID that you want to bind, and click OK.
Setting Up Target/LUN Blocking Using sd.conf The class keyword ("scsi") ensures that Solaris specifically probes all adapters controlled by all driver that register themselves as class="scsi". The parent keyword ("lpfc") ensures that Solaris specifically probes all adapters controlled by the lpfc driver for the specified targets and LUNS. The class and parent keywords cause the SCSI layer to probe multiple adapters, even multiple adapters across multiple drivers.
Performing Diagnostic Tests Use the Diagnostics tab to do the following: • Run these tests on Emulex HBA's installed in the system: • PCI Loopback (see page 74) • Internal Loopback (see page 74) • External Loopback (see page 74) • Power-On Self Test (POST) (see page 71) • Echo (End-to-End) (see page 75) • Quick Test (see page 70) • Perform a diagnostic dump (see page 72). • View PCI registers and wakeup parameter (see page 72). • Control HBA beaconing (see page 71).
3. Select the Diagnostics tab and click Quick Test. The following message appears: Figure 32: HBAnyware Utility, Quick Test Message 4. Click OK to run the test. The Quick Diagnostics Test message shows the PCI Loopback and Internal Loopback test results. Running a POST Test The POST (Power On Self Test) is a firmware test normally performed on an HBA after a reset or restart. The POST does not require any configuration to run. To run the POST Test: 1. Start the HBAnyware utility. 2.
Creating Diagnostic Dumps The diagnostic dump feature enables you to create a “dump” file for a selected HBA. Dump files contain various information such as firmware version, driver version and so on, that is particularly useful when troubleshooting an HBA. Note: The Diagnostic Dump feature is only supported for local HBAs. If a remote HBA is selected from the tree-view, the Initiate Diagnostic Dump is disabled. To start a diagnostic dump: 1. Start the HBAnyware utility. 2.
Running Advanced Diagnostic Tests The Advanced Diagnostics feature gives you greater control than the Quick Test over the type of diagnostics tests that run. Through Advanced Diagnostics, you can specify which tests to run, the number of cycles to run, and what to do in the event of a test failure. To run advanced diagnostics tests: 1. Start the HBAnyware utility. 2. Click Advanced Diagnostics Test on the Diagnostics tab to view the Advanced Diagnostics dialog box.
Running Loopback Tests To run a loopback test, use the "Loopback Test" section of the Advanced Diagnostics dialog box. You can run the following loopback test combinations using the appropriate check boxes: • PCI Loopback Test - A firmware controlled diagnostic test in which a random data pattern is routed through the PCI bus without being sent to an adapter link port. The returned data is subsequently validated for integrity.
5. Click OK. If you choose to run an External Loopback test the following window appears: Figure 38: HBAnyware Utility, Advanced Diagnostic Tests Warning for External Loopback 6. Click OK. The progress bar indicates that the test is running. Periodic test feedback, consisting of the current loopback test/cycle plus the completion status of each type of test, is displayed in the "Test Log" section of the dialog box.
All relevant information for the selected port is automatically added to the Target Identifier section of the Diagnostics dialog box. Figure 39: HBAnyware Utility, Select Echo Test Target Window 5. Click Start. The following warning window appears: Figure 40: HBAnyware Utility, Advanced Diagnostic Tests Warning 6. Click OK. A result screen appears and the test results appear in the Test Log. Click Clear to erase the contents of the log display or click Save to File to save the log file.
An example of a saved log file appears below: Figure 41: DiagTestLog Window To save the log file: 1. After running a test from the Diagnostic Test Setup dialog box, Click Save to File. The Select Diagnostic Log file Name dialog box appears. The default name of a saved file is DiagTestLog.log. 2. Browse to the desired directory, change the log file name if you wish and click Save.
Adding a Single Host The HBAnyware utility enables you to specify a single OOB host to manage. If the host is successfully discovered as a manageable host, it is added to the static list of hosts and if it has not been discovered in-band, the host and its HBAs are added to the discovery tree. To add a single host: 1. Start the HBAnyware utility. 2. From the Discovery menu, select Out-of-Band/Add Host. The Add Remote Host dialog box appears. Figure 42: HBAnyware Utility, Add Remote Host Dialog Box 3.
Adding a Range of Hosts You can find the OOB manageable hosts by searching a range of IP addresses using the Add Range of IP Hosts dialog box. Figure 43: HBAnyware Utility, Add Remote Hosts Window The Add Range of IP Hosts dialog box enables you to build the initial list of OOB manageable hosts. To add a range of hosts: 1. Start the HBAnyware utility. 2. From the Discovery menu, select Out-of-Band/Add Range of Hosts. The Add Range of IP Hosts dialog box appears. 3.
6. A dialog box appears asking to save the IP ranges you searched. Click Yes to save the address ranges. If you save the address ranges, these address ranges will appear the next time you use the Add Range of IP Hosts dialog box. Click No if you do not want to save the address ranges. The Save Ranges to A File button saves the specified range(s) to a file so that the same ranges can be automatically invoked when the HBAnyware utility is started again.
• SA_ID - An index (into the SA table) that is passed in the CT command descriptor to indicate which Access Control Record (containing the key is being used to encrypt/decrypt the command data) to use in the SA table. • Master Security Client (MSC) - Upon first discovery, an MSC will configure the first ACG, granting itself client access and all of the systems it wants to manage server access. Once security is enabled on a server system, that server cannot grant itself client access.
Starting the Security Configurator for the First Time: Creating the First ACG, Designating the MSC and Selecting Systems in the FC Network Prerequisites • The Solaris SFS Driver is installed. • The HBAnyware and lputil utilities are installed. • The HBAnyware Security Configurator is installed. • All of the systems that are part of, or will be part of, the security configuration are online on the Fibre Channel network.
All of the available servers are discovered and available to become part of the system Access Control Group (ACG). 3. Select the unsecured servers to be added to the ACG from the Available Servers list. Figure 47: Security Configurator, Access Group Control Tab with Call Outs 4. Click the left arrow to add the servers to the Access Control Group Servers list. Note: There can be only one MSC per access control group (ACG).
a. The SSC utility runs. b. SA_ID is selected. c. SA files are created for systems 2 through 5. d. SA files are sent to each system and system 1 becomes an ACG and an MSC, the only system which can run the HBAnyware client to remotely access all other system.
When you select systems in the ACG and move them to the Available Servers list, the security configuration for those systems is updated to make them unsecure. After you have configured security from the MSC for the first time, the Access Control Group tab looks similar to the following: Figure 49: Security Configurator, Access Control Group Tab on a non-MSC system Access Control Group Tab on a Non-MSC On a non-MSC system, the Access Control Group tab shows the systems that are part of the client's ACG.
The system is a secure server in the ACG. It does not belong to an Access Sub-Group (ASG). You can remove this system from the ACG. The system is a secure server in the ACG and belongs to one or more ASGs. You can remove this system from the ACG. The system is a secure server in the ACG and a client to an ASG. You cannot remove this system from the ACG until you remove it as a client from the ASG.
Deleting a Server from the ACG To delete a server from the Access Control Group (ACG): 1. Start the HBAnyware Security Configurator. 2. On the Access Control Group tab, from the Access Control Group Servers list, select the secured systems that you want to delete from the ACG. Figure 52: Security Configurator, The Access Group Control Tab with Call Outs 3. Click the right arrow to remove the servers from the Access Control Group Servers list. 4. Click OK or Apply.
Removing Security from all Servers in the ACG You can remove security from all systems only from the Master Security Client (MSC). Removing the entire security topology on all of the servers in the MSC's ACG puts the servers in an unsecure state. The MSC is also put in an unsecure state; consequently, it is no longer the MSC. Any participating systems that are not online will not receive the 'remove security' configuration update, and as a result will no longer be accessible remotely.
Generating New Security Keys You can generate new security keys only from a Master Security Client (MSC). After the new security keys are generated, they are automatically sent to all of the remote servers in the Access Control Group (ACG). Note: All the servers that are part of the ACG must be online when this procedure is performed so that they may receive the new keys. Any servers that do not receive the new keys will no longer be accessible remotely.
Restoring the ACG to Its Last Saved Configuration You can restore the ACG to its last saved configuration, if there are unsaved changes to the ACG, only from the Master Security Client (MSC). To restore the ACG to its last saved configuration: 1. From the Access Control Group tab on the MSC, click the Restore button.
Accessing a Switch You can enable switch access only on a Master Security Client (MSC). Switch access grants the client access rights to a switch to remotely access HBAs on servers in the Access Control Group (ACG). To enable switch access: 1. Start the HBAnyware Security Configurator. 2. From the Access Control Group tab, check Enable Switch Access.
Access Sub-Groups Introduction The Access Sub-Group tab allows you to create multiple Access Sub-Groups (ASGs) and multiple levels (tiers) in the security topology hierarchy. The hierarchy can be as many levels deep as desired. However, it is recommended the hierarchy extend no more than three levels deep, as it becomes increasingly difficult to keep track of the topology the deeper it goes. The hierarchy of ASGs is displayed in the Access Sub-Groups tab as a tree.
Creating an ASG You create a new Access Sub-Group (ASG) by selecting one system from the Access Control Group (ACG) to be the client, and some or all of the other systems to be servers to this client, thus defining the new client's ACG. When the HBAnyware Security Configurator is run on the new client, the displayed ACG shows the servers that were configured in the ASG by its parent client. To create an ASG: 1. Start the HBAnyware Security Configurator. 2. Click the Access Sub-Groups tab.
5. Click OK in the New Access Sub-Group dialog box. The ASG is created. The following process sets up the ASG (see Figure 61) a. The SSC utility runs. b. A new ASG is created with Systems 2 and 15 as clients. c. A new SA_ID is selected for System 2, and a new SA_ID is selected for System 15. d. SA file updates are sent to each system in the ASGs. In Figure 61, System 2 has remote access to systems 3 through 9. System 15 has remote access to systems 8 through 15.
Adding a Server to an ASG To add a server to an ASG: 1. Start the HBAnyware Security Configurator. 2. Click the Access Sub-Group tab. Figure 62: Security Configurator, Access Sub-Groups Tab with Available Servers 3. The name of the ASG is displayed in the Access Sub-Groups tree. From the Available Servers list, select the servers to be added to the ASG. 4. Click the left arrow to move the servers to the Access Sub-Group Servers list. 5. Click OK or Apply to update servers, adding them to the ASG.
Restoring an ASG to Its Last Saved Configuration You can restore an ASG to its last saved configuration if there are unsaved changes to it. To restore an ASG to its last saved configuration: 1. Click the Access Sub-Group tab. Figure 63: Security Configurator, Access Sub-Groups Tab with Available Servers 2. Select the ASG whose configuration you want to restore. 3. Click Restore. 4. Click OK or Apply to save your changes.
Editing an ASG You can change the name, client system or reserved indices of an Access Sub-Group (ASG). To edit an ASG: 1. Start the HBAnyware Security Configurator. 2. Click the Access Sub-Group tab. Figure 64: Security Configurator, Access Sub-Groups Tab with Available Servers 3. Select the ASG you want to edit. 4. Click Edit. The Edit Access Sub-Group dialog box is displayed. Figure 65: Security Configurator, Edit Access Sub Group Dialog Box 5.
system. See the Reserved Indices topic (under Access Sub-Groups in this manual) for examples. 6. Click OK in the Edit Access Sub-Group dialog box to save your changes. About Offline ASGs Sometimes a client system may not be online when the HBAnyware Security Configurator is running.
Backup Masters Introduction A Backup Master mirrors the security data of the Master Security Client (MSC) in case it has to take over as the MSC if the MSC becomes unable to operate or is removed from the security configuration. A Backup master system receives all the updates to the security configuration on the MSC. However, you cannot make modifications to the security configuration on a Backup Master.
Backup Master Tab and Controls The first time the Backup Master tab is selected on the MSC, it looks similar to the following: Figure 68: Security Configurator, Backup Master Tab (initial view) Creating a Backup Master To create a Backup Master: 1. On the Master Security Client (MSC), start the HBAnyware Security Configurator. 2. Click the Backup Master tab. Figure 69: Security Configurator, Backup Master Tab with Backup Master Selected 3. Select a system from the Available Systems list. 4.
a. The SSC utility runs. b. Discovery finds System 16. c. The SA File is sent to System 16 with the correct SA_ID set for server access. Figure 70: System16 as Backup Master Reassigning a Backup Master as the New MSC from the Old MSC Because a Backup Master may have to take over as the Master Security Client (MSC), it should be able to physically access all of the HBAs that the MSC can access.
2. Click the Backup Master tab. Figure 71: Security Configurator, Backup Master Tab with Backup Master Selected 3. In the Backup Masters list, select the Backup Master system that you want to reassign as the MSC. 4. Click Assign New Master Client. You will be asked if you wish to proceed. 5. Click Yes. The selected Backup Master becomes the new MSC. The current MSC becomes a server in the new MSC's ACG. After the changes are made, a message indicates that the reassignment is complete. 6. Click OK.
Reassigning a Backup Master as the New MSC from the Backup Master WARNING: Use this method only if the MSC cannot relinquish control to a Backup Master. For example, if the MSC is no longer bootable or able to connect to the Fibre Channel network. Under any other circumstances, if the Backup Master takes over as the MSC, and the MSC is still running or comes back online later, there will be two MSCs for the same security configuration. This will eventually lead to corruption of the security configuration.
Using the emlxadm Utility The emlxadm utility is a direct user interface to the FCIO interface provided by the Sun StorEdge Solaris SFS. The FCIO interface provides a Sun common ioctl interface to the FCTL, which manages the FCA drivers for each FC HBA attached to the host system.
reset_link - Resets the link of a specified FC device. reset_hard - Reset the HBA. reset_hard_core - Reset the HBA firmware core. diag - Perform a diagnostic test on the HBA. ns - Performs a complete query of the fabric name server. parm_get_num - *Returns the total number of configurable parameters. parm_get_list - *Returns a list of configurable parameters. parm_get
# If you do not want the utility to pause for verification, add a "-y" option just after the device path, and the emlxadm utility will skip the verification. For example: # emlxadm /devices/pci@1e,600000/SUNW,emlxs@2/fp@0,0:devctl 21000020371938fa -y get_state Information similar to the following is displayed: Found path to 1 HBA port(s).
Command Descriptions (emlxadm) This section provides a list of commands and descriptions that can be issued with the emlxadm utility. get_num_devs Returns the number of FC devices currently seen by this HBA port. Example: emlxadm> get_num_devs There are 4 devices reported on this port. get_dev_list Returns a list of FC devices currently seen by this HBA port.
get_logi_params Returns the FC login common service parameters for a specified FC device on the network.
get_sym_pname Returns the symbolic FC port name of the HBA port. Note: This operation is currently not supported by the Solaris Leadville stack. Example: emlxadm> get_sym_pname ioctl: FCIO_GET_SYM_PNAME: Operation not supported set_sym_pname <"string"> Sets the symbolic FC port name of the HBA to the string provided. Note: This operation is currently not supported by the Solaris Leadville stack.
dev_logout Performs an FC logout to an FC device on the network, if not already logged in. Example: emlxadm> dev_logout 21000020371938fa Done. get_state Returns the current Leadville state of the specified FC device on the network. Example: emlxadm> get_state 21000020371938fa State: PORT_DEVICE_LOGGED_IN dev_remove Removes the specified FC device from Leadville management.
download_fcode Downloads the specified FCode image file to the HBA. Example: emlxadm> download_fcode LP10000DC-S.fcode Image Components: REL type size=33848 DWC file: BOOT: version=03841512, 1.50a2 Current: Fcode: 1.50a1 New: Fcode: 1.50a2 33848 (0x8438) bytes Are you sure you want to download this image? (y or n): y Downloading... Result: Operation successful. Done.
get_boot_rev Returns the current boot revision of the HBA. Example: emlxadm> get_boot_rev Firmware revision: LP10000DC-S 1.90a3 download_boot Downloads the specified boot image file to the HBA. Example: emlxadm> download_boot TD190A4.PRG Image Components: REL type size=143416 DWC file: BOOT: version=03845054, 1.90a4 Current: Boot: 1.90a3 New: Boot: 1.90a4 143416 (0x23038) bytes Are you sure you want to download this image? (y or n): y Downloading... Done.
The following is an example of the text file created by this operation. The binary version of the file has the binary pattern indicated without the column or row labels and white spaces. mydump.
reset_hard_core Forces the HBA to perform a core firmware reset. Example: emlxadm> reset_hard_core Done. diag or diag code Performs the specified diagnostics function or command code on the HBA port. This command provides support for the Emulex-specific tests shown below, or generic support to issue an HBA-specific diagnostic code (in hexadecimal) to any third party HBA.
ns Performs and returns a complete query of the fabric name server. Example: emlxadm> ns Nameserver: ----------------------------------------------------------------TYPE: Lport PID: 0113E1 WWPN: 21000020371938fa PORT_NAME: (SEAGATE ST39103FC 0004) WWNN: 20000020371938fa NODE_NAME: (null) IPA: ffffffffffffffff IP_ADDR: 0.0.0.
parm_get_list Returns a list of configurable parameters. Example: emlxadm> parm_get_list Parameter: ----------------------------------------------------------------label: console-notices min: 0x0 current: 0x0 max: 0xffffffff default: 0x0 dynamic: yes desc: Verbose mask for notice messages to the console.
----------------------------------------------------------------label: ub-bufs min: 40 current: 1000 max: 16320 default: 1000 dynamic: no desc: Number of unsolicited buffers the driver should allocate. ----------------------------------------------------------------label: network-on min: 0 current: 1 max: 1 default: 1 dynamic: no desc: Enable IP processing. ----------------------------------------------------------------label: ack0 min: 0 current: 0 max: 1 default: 0 dynamic: no desc: Enable ACK0 support.
----------------------------------------------------------------label: assign-alpa min: 0x0 current: 0x0 max: 0xef default: 0x0 dynamic: no desc: Assigns a preferred ALPA to the port. Only used in Loop topology. ----------------------------------------------------------------label: adisc-support min: 0 current: 1 max: 2 default: 1 dynamic: yes desc: Sets the Fibre Channel ADISC login support level.
msgbuf all or [-i interval] Displays all or part (the last of lines) of the current driver message log, and can update the screen every seconds if desired. To stop the program from updating the screen, press + . If no interval is provided, the current message log is displayed with no additional updates, and the emlxadm prompt returns. Example: emlxadm> msgbuf 10 155130.01: 1002033:[B.1C35]emlxs0: [00011000,00000000]) 155130.02: 1002034:[4.
00000000, 00000000, 00000000, 00000000, Port Symbolic Name = none Port Supported Speed = 1Gb, 2Gb Port Speed = 1Gb Port Max Frame Size = 0x800 bytes Fabric Name = 0000000000000000 Number of Discovered Ports = 4 get_port_attrs , or all Displays the current HBA API port attributes. All of the port attributes can be displayed, or a single port can be specified by or .
Port State = Unknown Port Supported COS = Class3 Port Supported FC4 Types: 00000000, 00000000, 00000000, 00000000, 00000000, 00000000, 00000000, 00000000, Port Active FC4 Types: 00000000, 00000000, 00000000, 00000000, 00000000, 00000000, 00000000, 00000000, Port Symbolic Name = SEAGATE ST39103FC Port Supported Speed = Unknown Port Speed = Unknown Port Max Frame Size = 0x0 bytes Fabric Name = 0000000000000000 0004 Port[2] Attributes: Node Port Port Port Port Port Port WWN = 20000020371939A3 WWN = 21000020
get_vpd Displays the current adapter's vital product data (VPD). Example: emlxadm> get_vpd Vital Product Data: Identifier (ID): FC2G PCI-X LP10000DC - SUN Part Number (PN): LP10000DC-S Manufacturer (MN): Sun Microsystems, Inc.
dev_remove - Remove the FC device from Leadville management. link_status - Request link error status from a specified D_ID. get_fcode_rev - Returns the current Fcode revison of the HBA. download_fcode [filename] - Download the HBA fcode. get_fw_rev - Returns the current firmware revison of the HBA. download_fw [filename] - Download the HBA firmware. get_boot_rev *Returns the current boot revison of the HBA. download_boot [filename] *Download the HBA boot image.
Using the emlxdrv Utility The emlxdrv utility is used for binding (associating) the Emulex emlxs (Leadville FC) driver and the Emulex lpfc (traditional non-Leadville FC) driver to the various models of Emulex FC HBAs. This allows both drivers to coexist in the same host and attach to mutually exclusive Emulex FC HBA models.
The display comprises three parts: the current driver configuration table, a list of available commands and the emlxdrv prompt. The driver configuration table contains the following columns of data: • Driver. Indicates which driver (emlxs, lpfc or "-" if none) is currently configured to bind or attach to a specific adapter alias. • Alias. Indicates the specific adapter alias associated with a set of Emulex HBA models.
emlxs emlxs emlxs emlxs f0a5 fc00 fc10 fc20 no yes no no no no no no no yes yes yes 2G Blade Adapter (emlxs only) LP10000-S and LP10000DC-S LP11000-S and LP11002-S (emlxs only) LPe11000-S and LPe11002-S # This mode of operation enables you to use the emlxdrv utility as part of a script or another program capable of executing system-level calls. For a detailed explanation of each command and its arguments, see Command Descriptions (emlxdrv) on page 126.
Cannot unload module: lpfc Will be unloaded upon reboot. Updating f980 ... Cannot unload module: lpfc Will be unloaded upon reboot. Updating Updating Updating Updating Updating Updating Done. fa00 fd00 fe00 fc00 fc10 fc20 ... ... ... ... ... ... set_lpfc Sets the lpfc driver to bind to the specified devices. You must specify one of the valid adapter aliases listed on the screen. Each alias is shared by multiple adapter models.
You may see the message "Cannot unload module". This indicates that you must reboot the system to get a driver to unbind from that adapter alias; emlxdrv only updates the system configuration for the next boot. Example: emlxdrv> clear_dev fe00 Updating fe00 ... Cannot unload module: emlxs Will be unloaded upon reboot. Done. clear_lpfc Clears all lpfc driver bindings. You may see the message "Cannot unload module".
clear_sun Clears driver bindings to all Sun devices. You may see the message "Cannot unload module". This indicates that you must reboot the system to get a driver to unbind from that adapter alias; emlxdrv only updates the system configuration for the next boot. Example: emlxdrv> clear_sun Updating fc00 ... Cannot unload module: emlxs Will be unloaded upon reboot. Updating fc10 ... Cannot unload module: emlxs Will be unloaded upon reboot. Updating fc20 ...
clear_all Clears driver bindings to all devices. You may see the message "Cannot unload module". This indicates that you must reboot the system to get a driver to unbind from that adapter alias; emlxdrv only updates the system configuration for the next boot. Example: emlxadm> clear_all Updating lpfs ... Cannot unload module: emlxs Will be unloaded upon reboot. Updating f800 ... Cannot unload module: emlxs Will be unloaded upon reboot. Updating f900 ...
Troubleshooting Introduction This Troubleshooting section contains the following tables with helpful information should your system operate in an unexpected manner. These tables explain many of these circumstances and offers one or more workarounds for each situation.
Table 1: General Situations (Continued) Situation Resolution Cannot See Other HBAs or Hosts. Although the HBAnyware utility is installed, only local HBAs are visible. The other HBAs and hosts in the SAN cannot be seen. The HBAnyware utility uses in-band data communication, meaning that the management server running the HBAnyware utility must have a physical FC connection to the SAN. All the HBAs in the SAN will be visible if: • The other servers have a FC connection to your zone of the SAN.
Table 1: General Situations (Continued) Situation Resolution Cannot run the Security Configurator on a system that is configured for only secure access. I cannot run the Security Configurator on a system that is configured for only secure server access (it has no client privileges). The following message is displayed when the Security Configurator starts: “This system is not allowed client access to remote servers. This program will exit.
Security Configuration Situations - Access Sub-Groups (ASG) Table 3: HBAnyware Security Configurator - Access Sub-Groups Situations Situation Resolution ASG Appears to Be Non-Hierarchical. It is possible from a higher-level client (such as the MSC) to create an ASG 1 with system A as the client and systems B, C, D, and E as servers. Then create an ASG 2 with system E as the client, but with systems F and G as servers even though F and G are not part of ASG 1. This makes the topology nonhierarchical.
Table 3: HBAnyware Security Configurator - Access Sub-Groups Situations (Continued) Situation Resolution Not All Servers are available to an ASG. When you create a new ASG or modify an existing ASG, not all of the servers in the ACG are available to be added to the ASG. A client system can be connected to more than one fabric.
Table 4: HBAnyware Security Configurator - Backup Masters Situations Situation Resolution The Backup Master tab is not available. The Backup Master tab is displayed only when the Security Configurator is running on the MSC or a Backup Master. You use this tab to set up a system or systems to be backups to the MSC and to replace the MSC with a Backup Master.
Table 5: Error Message Situations Situation Resolution The first time the Security Configurator is started in an unsecure environment, the following message is displayed: “This utility is running on an unsecure system. Continuing will allow you to set up a new security configuration making this system the Master Client System.” Click OK on the message and complete the ACG setup. The system on which the Security Configurator is running will become the MSC.
Table 6: Master Security Client Situations Situation Resolution Security Removed While Servers Were Offline. Security was removed while one or more servers were offline. I can no longer access those servers from the Security Configurator or the HBAnyware utility. The servers are no longer part of the security configuration. In order to reset the security on the affected servers, contact Emulex Technical Support to receive a special application and instructions on the reset procedure.
Console and Log Messages Introduction Log messages are logged to the /var/adm/messages system file. Table 7: Notice, Warnings and Error Types Driver Parameter Default/ Min/Max Effect of Changing Default console-notices 0 Sets the verbose level for driver notices to the console. console-warnings 0 Sets the verbose level for driver warnings to the console. console-errors 0 Sets the verbose level for driver errors to the console.
Table 8: Log Message Types (Continued) LOG Message Verbose Mask Verbose Bit Verbose Description LOG_FCP 0x00000400 FCP traffic events LOG_TGTM 0x00000800 FCP target mode events LOG_IP 0x00001000 IP traffic events LOG_SFS 0x00002000 Solaris SFS events LOG_IOCTL 0x00004000 IOCTL events LOG_FIRMWARE 0x00008000 Firmware download events LOG_CT 0x00010000 FC Common Transport events LOG_RESERVED 0x01FE0000 Reserved for future use LOG_NODE_DETAIL 0x02000000 Detailed Node events LOG_IOC
• Jan 19 14:45:36 unidentified the date and time when the error or event occurred. • sunv240 identifies the name of the host machine. • emlxs identifies the message came from the Emulex emlxs driver. • [ID 349649 kern.info] identifies a Solaris-specific message ID and kernel message level. This will change from one driver message to another. • [5.0336] identifies the emlxs driver message context tag. This may change from one driver version to another.
MSG_ID: 0005 Panic VERBOSE_MASK: LOG_MISC (0x00000001) DESCRIPTION: This is a general purpose panic message. SEVERITY LEVEL: Panic (Severe) MESSAGE: None ACTION: Contact Technical Support. Driver Events MSG_ID: 0100 Notice: Driver Attach VERBOSE_MASK: LOG_DRIVER (0x00000002) DESCRIPTION: This indicates that the driver is performing an attach operation. SEVERITY LEVEL: Notice MESSAGE: None ACTION: No action needed, informational.
MSG_ID: 0112 Debug: Driver Detach VERBOSE_MASK: LOG_DRIVER (0x00000002) DESCRIPTION: This indicates that the driver is performing an detach operation. SEVERITY LEVEL: Debug MESSAGE: Driver detach ACTION: No action needed, informational. MSG_ID: 0120 Debug: Driver Suspend VERBOSE_MASK: LOG_DRIVER (0x00000002) DESCRIPTION: This indicates that the driver is performing a suspend operation. SEVERITY LEVEL: Debug MESSAGE: Driver suspend ACTION: No action needed, informational.
MSG_ID: 0201 Error: Adapter Initialization Failed VERBOSE_MASK: LOG_INIT (0x00000004) DESCRIPTION: This indicates that an attempt to initialize the adapter has failed. SEVERITY LEVEL: Error MESSAGE: Adapter initialization failed ACTION: Check your hardware configuration. If problems persist, report these errors to Technical Support. MSG_ID: 0202 Debug: Adapter Initialization VERBOSE_MASK: LOG_INIT (0x00000004) DESCRIPTION: This indicates that the adapter is initializing.
Memory Management Events MSG_ID: 0300 Debug: Memory Allocated VERBOSE_MASK: LOG_MEM (0x00000008) DESCRIPTION: This indicates that the driver allocated system memory. SEVERITY LEVEL: Debug MESSAGE: Memory alloc ACTION: No action needed, informational. MSG_ID: 0301 Error: Memory Allocation Failed VERBOSE_MASK: LOG_MEM (0x00000008) DESCRIPTION: This indicates that the driver was unable to allocate system memory. The system is low on memory resources.
Service Level Interface (SLI) Events MSG_ID: 0400 Debug: Vital Product Data VERBOSE_MASK: LOG_SLI (0x00000010) DESCRIPTION: This provides vendor-specific information about the adapter. SEVERITY LEVEL: Debug MESSAGE: Vital Product Data ACTION: No action needed, informational. MSG_ID: 0410 Debug: Link Attention VERBOSE_MASK: LOG_SLI (0x00000010) DESCRIPTION: This indicates that the adapter has triggered a link attention interrupt.
MSG_ID: 0432 Debug: Ring Reset VERBOSE_MASK: LOG_SLI (0x00000010) DESCRIPTION: This indicates an SLI ring is being reset. SEVERITY LEVEL: Debug MESSAGE: Ring reset ACTION: No action needed, informational. MSG_ID: 0440 Debug: Adapter Msg VERBOSE_MASK: LOG_SLI (0x00000010) DESCRIPTION: This indicates that a message was sent to the driver from the adapter. SEVERITY LEVEL: Debug MESSAGE: Adapter msg ACTION: No action needed, informational.
Mailbox Events MSG_ID: 0500 Debug: Mailbox Event VERBOSE_MASK: LOG_MBOX (0x00000020) DESCRIPTION: This indicates that a mailbox event has occurred. SEVERITY LEVEL: Debug MESSAGE: Mailbox event ACTION: No action needed, informational. MSG_ID: 0501 Debug: Mailbox Detail VERBOSE_MASK: LOG_MBOX _DETAIL (0x40000000) DESCRIPTION: This provides detailed information about a mailbox event. SEVERITY LEVEL: Debug MESSAGE: Mailbox detail ACTION: No action needed, informational.
MSG_ID: 0602 Notice: Node Create Failed VERBOSE_MASK: LOG_NODE (0x00000040) DESCRIPTION: This indicates that a node create request for a remote device has failed. SEVERITY LEVEL: Notice MESSAGE: Node create failed ACTION: No action needed, informational. MSG_ID: 0603 Debug: Node Updated VERBOSE_MASK: LOG_NODE (0x00000040) DESCRIPTION: This indicates that a node has been updated for a remote device. SEVERITY LEVEL: Debug MESSAGE: Node updated ACTION: No action needed, informational.
Link Events MSG_ID: 0700 Debug: Link Event VERBOSE_MASK: LOG_SLI (0x00000010) or LOG_LINK (0x00000080) DESCRIPTION: This indicates that a link event has occurred. SEVERITY LEVEL: Debug MESSAGE: Link event ACTION: No action needed, informational. MSG_ID: 0710 Notice: Link Down VERBOSE_MASK: LOG_LINK (0x00000080) DESCRIPTION: This indicates that the FC link is down to the adapter. SEVERITY LEVEL: Notice MESSAGE: Link down ACTION: Check your network connections.
ELS Events MSG_ID: 0800 Debug: ELS Sent VERBOSE_MASK: LOG_ELS (0x00000100) DESCRIPTION: This indicates that an ELS command is being sent. SEVERITY LEVEL: Debug MESSAGE: ELS sent ACTION: No action needed, informational. MSG_ID: 0801 Debug: ELS Comp VERBOSE_MASK: LOG_ELS (0x00000100) DESCRIPTION: This indicates that an ELS command completed normally. SEVERITY LEVEL: Debug MESSAGE: ELS comp ACTION: No action needed, informational.
MSG_ID: 0822 Debug: ELS Reply VERBOSE_MASK: LOG_ELS (0x00000100) DESCRIPTION: This indicates that a reply is being sent for an unsolicited ELS command. SEVERITY LEVEL: Debug MESSAGE: ELS reply ACTION: No action needed, informational. MSG_ID: 0830 Error: Invalid ELS Command Found VERBOSE_MASK: LOG_ELS (0x00000100) DESCRIPTION: This indicates that an ELS command was found with an invalid command code. SEVERITY LEVEL: Error MESSAGE: Invalid ELS command found ACTION: No action needed.
MSG_ID: 0911 Debug: TXQ Watchdog VERBOSE_MASK: LOG_PKT (0x00000200) DESCRIPTION: This indicates that I/O(s) was found missing from the transmit queue. SEVERITY LEVEL: Debug MESSAGE: TXQ watchdog ACTION: No action needed, informational. MSG_ID: 0920 Debug: Packet Flush VERBOSE_MASK: LOG_PKT (0x00000200) DESCRIPTION: This indicates that an I/O packet is being flushed. SEVERITY LEVEL: Debug MESSAGE: Packet flush ACTION: No action needed, informational.
MSG_ID: 0932 Debug: Packet Transport VERBOSE_MASK: LOG_PKT (0x00000200) DESCRIPTION: This provides additional information about a packet being sent. SEVERITY LEVEL: Debug MESSAGE: Packet transport ACTION: No action needed, informational. MSG_ID: 0940 Debug: Packet Completion Error VERBOSE_MASK: LOG_PKT (0x00000200) DESCRIPTION: This indicates that an I/O packet was completed with an error status. This can occur during normal operation. SEVERITY LEVEL: Debug MESSAGE: Packet completion error.
MSG_ID: 1211 Debug: Abnormal IP Completion VERBOSE_MASK: LOG_IP (0x00001000) DESCRIPTION: This indicates that an IP sequence completed with a status error in the IOCB. It could mean the FC device on the network is not responding. SEVERITY LEVEL: Debug MESSAGE: Abnormal IP completion ACTION: No action needed, informational. If problems persist, report these errors to system administrator.
MSG_ID: 1310 Warning: Diagnostic Error VERBOSE_MASK: LOG_SFS (0x00002000) DESCRIPTION: This indicates that a diagnostic request did not complete because of some issue. SEVERITY LEVEL: Warning MESSAGE: Diagnostic error ACTION: No action needed. If problems persist, report these errors to Technical Support. MSG_ID: 1311 Debug: ECHO Diagnostic Completed VERBOSE_MASK: LOG_SFS (0x00002000) DESCRIPTION: This indicates that an ECHO diagnostic has completed.
MSG_ID: 1316 Error: POST Diagnostic Failed VERBOSE_MASK: LOG_SFS (0x00002000) DESCRIPTION: This indicates that a POST diagnostic has failed to return a positive result. This is usually caused by an adapter hardware problem. SEVERITY LEVEL: Error MESSAGE: POST diagnostic failed ACTION: Report this error to Technical Support. IOCTL Events MSG_ID: 1400 Debug: IOCTL VERBOSE_MASK: LOG_IOCTL (0x00004000) DESCRIPTION: This provides general information about the driver’s IOCTL interface.
Firmware Download Events MSG_ID: 1500 Debug: Firmware Image VERBOSE_MASK: LOG_FIRMWARE (0x00008000) DESCRIPTION: This provides information about the firmware interface. SEVERITY LEVEL: Debug MESSAGE: Firmware image ACTION: No action needed, informational. MSG_ID: 1501 Debug: Firmware Image Detail VERBOSE_MASK: LOG_FIRMWARE_DETAIL (0x10000000) DESCRIPTION: This provides detailed information about the firmware interface. SEVERITY LEVEL: Debug MESSAGE: Firmware detail ACTION: No action needed, informational.
MSG_ID: 1522 Error: Firmware Download Failed VERBOSE_MASK: LOG_FIRMWARE (0x00008000) DESCRIPTION: This indicates that an attempt to download a firmware image was failed. SEVERITY LEVEL: Error MESSAGE: Firmware download failed ACTION: Check your hardware configuration. If problems persist, report these errors to Technical Support. Common Transport Events MSG_ID: 1600 Debug: CT sent VERBOSE_MASK: LOG_CT (0x00010000) DESCRIPTION: This indicates that a CT command is being sent.
MSG_ID: 1621 Debug: Unsolicited CT dropped VERBOSE_MASK: LOG_CT(0x00010000) DESCRIPTION: This indicates that an unsolicited CT command was received and then dropped for some reason. SEVERITY LEVEL: Debug MESSAGE: Unsolicited CT dropped. ACTION: No action needed, informational. MSG_ID: 1622 Debug: CT reply VERBOSE_MASK: LOG_CT(0x00010000) DESCRIPTION: This indicates that a reply is being sent for an unsolicited CT command. SEVERITY LEVEL: Debug MESSAGE: CT reply ACTION: No action needed, informational.
Appendix Introduction Use Cases Note: The concurrent production use of emlxs (Leadville) and lpfc on a given server is not supported. Transient coexistence is required in some migration use cases but must be discontinued before going into production.
Migrating from the Solaris lpfc Driver to the Solaris SFS Driver If the Emulex lpfc driver for Solaris is already installed, you can migrate to the Solaris SFS driver either by customizing and running the unsupported sample scripts provided by Emulex, or by manually performing a set of procedures. Operational Differences Between lpfc and SFS Device discovery operation is different between SFS and lpfc as follows: • lpfc discovers all fabric target devices by default.
5. Verifies that the system boot device is not an Emulex HBA (if so, the sample script exits with an explanation). 6. Obtains and verifies the FCode version for each HBA in the system. If the FCode version is not compatible, the sample script errors, then exits. 7. Sets the FCode SFS bit to 1 on each adapter. 8. Calls the operating system’s add/remove driver utility to configure /etc/driver_aliases. 9. Prompts you to reboot the system. The adapterN.migrate and targetN.
Migrating a Configuration without FC Boot Migrating Automatically Automatic migration provides an equivalent FC storage setup running on the Solaris FC (Leadville) stack. Emulex's Solaris lpfc driver on the SPARC platform uses "sd" as the native SCSI driver, and works in Solaris 2.6, 7, 8, 9 and 10. Emulex’s emlxs driver supports the Leadville stack using "ssd" as the SCSI driver. With this procedure, a SAN setup on the host seamlessly migrates from using lpfc to the same setup using emlxs.
Migrating Manually To migrate manually: 1. Back up all data and system disks. 2. Note current lpfc target and LUN information contained in the following files: • /etc/vfstab • /kernel/drv/lpfc.conf • /kernel/drv/sd.conf Persistent binding of the lpfc driver's targets is recommended before performing migration. 3. Using Emulex lputil or HBAnyware utilities for lpfc (bundled as part of the driver kit available at http://www.emulex.com/ts/downloads/solpci/sol.
11. Configure any targets that were used with the lpfc driver (cfgadm -a to display the target list, cfgadm -c configure to configure the ApId's storage). The ApId can also be referenced in the /kernel/drv/lpfc.conf file (for example, fcp-bind-WWPN="200400a0b816dc52:lpfc3t4" could be configured by typing cfgadm -c configure c6::200400a0b816dc52) 12. Edit the /etc/vfstab file and replace the sd pathname (for example, c3t4d1s6) to the ssd pathname (for example, c6t200400A0B816DC52d1s6). 13.
/pci@8,600000/lpfc@2 . . . {0} {0} {0} e. Boot ok ok ok the " /pci@8,600000/lpfc@2" select-dev set-sfs-boot reset-all system to the OS. 6. Define or designate an alternate boot drive for DAS boot through SFS and the Sun or Emulex HBA. If the alternate boot drive is fabric-attached, configure the storage (by using a command such as cfgadm -c configure ). 7. Use the format command to identify the alternate boot drive and take note of its path because will be used to boot from the added HBA. 8.
Migrating an lpfc Configuration to emlxs – Adding Sun-Branded HBAs This case applies if you plan to migrate all or some of your existing HBAs from lpfc to emlxs, as well as adding Sun-branded HBAs. The steps to follow are identical to Migrating Non-emlxs HBAs to emlxs HBAs on page 166, with the exception that step 14 (removing HBAs not supported by emlxs) may not apply.