FC HBA - SAN Troubleshooting in An Oracle Linux x86:x64 Environment (Doc ID 2087727.1)
FC HBA - SAN Troubleshooting in An Oracle Linux x86:x64 Environment (Doc ID 2087727.1)
1
Copyright (c) 2023, Oracle. All rights reserved. Oracle Confidential.
In this Document
Main Content
References
APPLIES TO:
MAIN CONTENT
This Document was created to assist in collecting SAN Connectivity data on Oracle Linux V5 and V6 and Redhat Linux V6
systems to aid in troubleshooting.
Note : Systools provides an easy way to get vital information. If Systools is not installed : yum install sysfsutils .
Install takes approx. 5 minutes.
Note : lshw provides an easy way to get slot information. If lshw is not installed : yum -y install lshw . Install takes approx.
5 minutes.
NOTE: Many of the example command outputs are not coordinated and are just for illustration purposes
When opening a new Oracle Service Request (SR) see following document for recommended support data
collection.
Document 2590638.1 Oracle Linux: Fibre Channel Server-Based Connectivity Issues - Basic information and Data Needed
by Oracle support
# ls -la /etc/*release -list release files, files contain kernel versions on the system
# ls -la /etc/*release
-rw-r--r--. 1 root root 152 Dec 16 07:10 /etc/lsb-release
-rw-r--r--. 1 root root 32 Jul 24 2015 /etc/oracle-release
-rw-r--r--. 1 root root 402 Jul 24 2015 /etc/os-release
-rw-r--r--. 1 root root 55 Jul 24 2015 /etc/redhat-release
lrwxrwxrwx. 1 root root 14 Dec 16 07:09 /etc/system-release -> oracle-release
#
# more /etc/*release
::::::::::::::
/etc/lsb-release
::::::::::::::
LSB_VERSION=base-4.0-amd64:base-4.0-noarch:core-4.0-amd64:core-4.0-noarch:graphics-4.0-
https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=lm4i08351_462&id=2087727.1 1/19
3/23/23, 11:05 AM Document 2087727.1
amd64:graphics-4.0-noarch:printing-4.0-amd64:printing-4
.0-noarch
::::::::::::::
/etc/oracle-release
::::::::::::::
Oracle Linux Server release 6.7
::::::::::::::
/etc/os-release
::::::::::::::
NAME="Oracle Linux Server"
VERSION="6.7"
ID="ol"
VERSION_ID="6.7"
PRETTY_NAME="Oracle Linux Server 6.7"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:oracle:linux:6:7"
HOME_URL="https://linux.oracle.com/"
BUG_REPORT_URL="https://bugzilla.oracle.com/"
# rpm -qf /etc/*release -proper way to display the kernel version of each release
Note: Output of "uname -a" command can also be used to identify Linux.
# uname -a
Linux host 4.1.12-61.1.18.el7uek.x86_64 #2 SMP Fri Nov 4 15:48:30 PDT 2016 x86_64 x86_64 x86_64
GNU/Linux
#
https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=lm4i08351_462&id=2087727.1 2/19
3/23/23, 11:05 AM Document 2087727.1
perl -e '$s = "/sys/class/fc_host/host";$st = 'ls -d $s*';chomp($st);@a1 = split("\n", $st);@a1 = sort{$a <=> $b}
map{(/(\d{1,2})/)?($1):(0)} @a1;print "\n\nPort Port Name" . " " x 17 . "Node Name Type State Speed\n" . "-" x 87 .
"\n";foreach(@a1){$port = substr('cat $s$_/port_name',2,16);$port =~ s/..\K(?=.)/:/g;$node = substr('cat
$s$_/node_name',2,16);$node =~ s/..\K(?=.)/:/g;$type = substr('cat $s$_/port_type',0,5);$type =~
s/^U.*/unknown/;$state = 'cat $s$_/port_state';chomp($state);$speed = 'cat $s$_/speed';chomp($speed);printf
"%-6s %s %s %-7s %s %s\n", "host$_", $port, $node, $type, $state, $speed};print "\n\n";'
See also: MaxRep: How to map FC WWNs to the HBAs (Doc ID 2169732.1)
Note: Unlike Qlogic, Emulex list chipset names instead of card speed. Use table below to determine card speed.
https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=lm4i08351_462&id=2087727.1 3/19
3/23/23, 11:05 AM Document 2087727.1
Saturn PCI-E 8Gb
Lancer PCI-E 16Gb
Each line on the lspci output above shows a PCI device. Each device is given a bus number, a device number and a
function number. On Linux, PCI devices are also given domain numbers, but they are usually omitted by lspci since very
often all devices have the same domain number (usually zero). These four numbers are assigned by Linux to each device
either on boot or when a device is hot-plugged. Since the PCI specification permits a system to host up to 256 buses,
nonzero domain numbers are only used to group PCI buses in very large systems. Each bus can host up to 32 devices, and
a PCI device can have up to eight functions. In more technical terms, a device's location is specified by a 16-bit domain
number, an 8-bit bus number, a 5-bit device number and a 3-bit function number; the last three numbers are commonly
referred to as the device's BDF or B/D/F (for bus/device/function).
The name of the slot where the device resides ([domain:]bus:device.function). This will need to be correlated to a physical
slot number on the server so the card can be located.
In this case, using the Emulex card as an example, the function number shows us the first port (port 0) of dual port fc hba
card in slot location 05:00.0.
And the second port (port 1) of the same dual port fc hba card as location 05:00.1.
Note: See item 15 below for command to correlate ([domain:]bus:device.function) to physical slot on system chassis.
"Subsystem: QLogic Corp. Device xxxx" = subsystem ID (SSID) this value determines if it is an Oracle branded fc hba card per Oracle Knowledge Base document below.
https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=lm4i08351_462&id=2087727.1 4/19
3/23/23, 11:05 AM Document 2087727.1
SDevice = subsystem ID (SSID) this value determines if it is an Oracle branded fc hba card per Oracle Knowledge Base
document below.
Or use following command which provides even more useful information. The end of the line that begins with "Subsystem:"
list the SSID.
Document 1282491.1 Solaris: How to Identify Oracle[TM] Branded Fibre Channel (FC) HBA, CNA/FCoE and Universal 16GB
HBA Cards and Their Slot Locations
Check "subsystem-id" field value (ie SSID) of FC HBA cards against the HBA Table pdf file attached to determine if hba is
Oracle or NON-Oracle.
SosReport, SosCommands, Hardware, lspci : Search for ql or lp then scroll up to find SSID ( Also Part # )
4 - Is/are the FC HBA port(s) online or offline? HBA Port Type ? , WWPN ? Speed ? FC Switch WWN? Port
Address?
Each fc hba port is assigned an alias with format of "hostnn" nn being a unique number.
Note: If additional fc hba cards are added the "hostnn" aliases may change.
https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=lm4i08351_462&id=2087727.1 5/19
3/23/23, 11:05 AM Document 2087727.1
"Port" = end point ie. World Wide Port number (WWPN) therefore, a physical cable connected to a physical port may
have one or more virtual ports (ie WWPN's) associated with it.
Host: /sys/class/fc_host/hostH/
Remote Port: /sys/class/fc_remote_ports/rport-H:B-R/
Transport: /sys/class/fc_transport/targetH:B:T/
# ls -la /sys/class/fc_host
total 0
drwxr-xr-x 2 root root 0 Dec 16 13:52 .
drwxr-xr-x 46 root root 0 Dec 16 13:52 ..
lrwxrwxrwx 1 root root 0 Dec 16 13:52 host10 ->
../../devices/pci0000:00/0000:00:04.0/0000:0a:00.0/0000:0b:02.0/0000:0c:00.0/host10/fc_host/host10
lrwxrwxrwx 1 root root 0 Dec 16 13:52 host11 ->
../../devices/pci0000:00/0000:00:04.0/0000:0a:00.0/0000:0b:02.0/0000:0c:00.1/host11/fc_host/host11
lrwxrwxrwx 1 root root 0 Dec 16 13:52 host12 ->
../../devices/pci0000:00/0000:00:02.0/0000:01:00.0/0000:02:00.0/0000:03:00.0/0000:04:02.0/0000:05:00
lrwxrwxrwx 1 root root 0 Dec 16 13:52 host13 ->
../../devices/pci0000:00/0000:00:02.0/0000:01:00.0/0000:02:00.0/0000:03:00.0/0000:04:02.0/0000:05:00
#
Or
# ls /sys/class/fc_host
host10 host11 host12 host13
#
Then check each port for status and other information as well.
Quick check shows only host10 and host12 are online others are Linkdown
# cd /sys/class/fc_host/
[root]# for x in `ls`
> do
> echo $x
> cat $x/port_state
> done
host10
Online
host11
Linkdown
host12
Online
host13
Linkdown
[root]#
Or
https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=lm4i08351_462&id=2087727.1 6/19
3/23/23, 11:05 AM Document 2087727.1
Example: First port of the dual port Qlogic fc hba card which is online
fabric_name is WWN of the device hba port is directly connected to, in this case it is a fc switch
port_id is fc switch port address (domain id/port #/alpa) the hba is connected to
https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=lm4i08351_462&id=2087727.1 7/19
3/23/23, 11:05 AM Document 2087727.1
vport_create = <store method only>
vport_delete = <store method only>
Example: Second port of the dual port Emulex fc hba card which is Linkdown
Or
cd /sys/class/fc_host/hostnn/
https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=lm4i08351_462&id=2087727.1 8/19
3/23/23, 11:05 AM Document 2087727.1
Note: If the port is not online it can not see any storage.
systool -c fc_remote_ports -v
# systool -c fc_remote_ports -v
Class = "fc_remote_ports"
Class = "fc_remote_ports"
Example of host only seeing some "Well Known" addresses of the fc switch
Note: Usually FC Emulex FC HBA cards will display "Well Known" addresses but not Qlogic FC HBA cards.
https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=lm4i08351_462&id=2087727.1 9/19
3/23/23, 11:05 AM Document 2087727.1
1/fc_remote_ports/rport-12:0-1"
port_id = "0xfffffc"
port_name = "0x21fc0005xxxxxxxx"
port_state = "Online"
roles = "Directory Server"
Class Device path =
"/sys/devices/pci0000:00/0000:00:02.0/0000:01:00.0/0000:02:00.0/0000:03:00.0/0000:04:02.0/0000:05:00
9:0-1/fc_remote_ports/rport-9:0-1"
port_id = "0xfffffc"
port_name = "0x21fc0005xxxxxxxx"
port_state = "Online"
roles = "Directory Server"
Class Device path =
"/sys/devices/pci0000:00/0000:00:02.0/0000:01:00.0/0000:02:00.0/0000:03:00.0/0000:04:02.0/0000:05:00
9:0-12/fc_remote_ports/rport-9:0-12"
port_id = "0xfffffe"
port_name = "0x200a0005xxxxxxxx"
port_state = "Online"
roles = "Fabric Port"
Class Device path =
"/sys/devices/pci0000:00/0000:00:02.0/0000:01:00.0/0000:02:00.0/0000:03:00.0/0000:04:02.0/0000:05:00
9:0-3/fc_remote_ports/rport-9:0-3"
port_id = "0xfffffe"
port_name = "0x200a0005xxxxxxxx"
port_state = "Online"
roles = "Fabric Port"
Class Device path =
"/sys/devices/pci0000:00/0000:00:02.0/0000:01:00.0/0000:02:00.0/0000:03:00.0/0000:04:02.0/0000:05:00
9:0-7/fc_remote_ports/rport-9:0-7"
port_id = "0xfffffe"
port_name = "0x200a0005xxxxxxxx"
port_state = "Online"
roles = "Fabric Port"
#
6 - Are the storage target WWNs presenting LUNs? Are those LUNs configured or unconfigured for use by
OS?
Systool –c fc_transport –v
/sys/class/fc_transport/target(x)/node_name or port_name
systool -c scsi_disk -v
/sys/class/scsi_host/host(x) directory
https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=lm4i08351_462&id=2087727.1 10/19
3/23/23, 11:05 AM Document 2087727.1
/proc/scsi/scsi
Automatically
# systool -c scsi_host -v
https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=lm4i08351_462&id=2087727.1 11/19
3/23/23, 11:05 AM Document 2087727.1
/sys/class/scsi_host/host(x)/x
Where x = driver_version and fw_version for qla and lpfc_drvr_verson and fwrev for lpfc
====
Firmware update:
9 - Is there a "/var/adm/messages" file in Linux?
10 - How is support data collected? What version of sosreport? How to upgrade sosreport?
/tmp
Survives reboot
12 - Is fc switch ports location for fc hba and other devices available (like luxadm -e dump_map) ?
TBD
/sys/class/fc_host/host(x)/statistics ( Directory )
fdisk –l
/proc/scsi/scsi
Systool –c fc_transport -v
https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=lm4i08351_462&id=2087727.1 12/19
3/23/23, 11:05 AM Document 2087727.1
15 - FC HBA port host ( Instance ) numbers? Slot Locations ? What controller number is assigned to each fc
hba port?
See also
Document 2590209.1 Oracle Linux: Locating Fibre Channel (FC) HBA Card Physical Slot and Port location
in Oracle x86 Server
Note: the above output needs to be double checked via dmidecode command output below by comparing bus
xxxx.aa.bb.c ignore xxxx digits.
Note: If dmidecode command output does not list Bus Address then most likely the server bios is to old. In that case
correlating the fc hba card Bus:Device.Function location to a physical external slot will have to be done via observation
and deductive reasoning.
# dmidecode -s bios-version
07060315
#
# dmidecode -s bios-release-date
04/14/2016
#
systool -c fc_host -v : If the output does not have Slot Number, then look at the line named Class Device Path ;
Search Sosreport, Soscommands, hardware, dmidecode for the Bus Address, which in this case is 0000:00:02.2 to find slot
#
Qlogic
Emulex
to be determined
https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=lm4i08351_462&id=2087727.1 14/19
3/23/23, 11:05 AM Document 2087727.1
SosReport, SosCommands, Kernel, lsmod Search for qla or lpfc
Ipmitool
Default verbosity:
# multipath –ll
Debug verbosity:
# multipath –ll –v 3
/etc/multipath.conf
/etc/multipath/wwids
Oracle Manual ‘Configuring Multipathing for Oracle Linux and the Oracle ZFS Storage Appliance
multipath_-l
::::::::::::::
360000970000296700327533030303241 dm-1 EMC,SYMMETRIX
size=20G features='1 queue_if_no_path' hwhandler='0' wp=rw
'-+- policy='round-robin 0' prio=0 status=active
|- 1:0:1:1 sdc 8:32 active undef running
'- 1:0:0:1 sdf 8:80 active undef running
https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=lm4i08351_462&id=2087727.1 15/19
3/23/23, 11:05 AM Document 2087727.1
1 - Sosreport
2 - systool -c fc_host -v
https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=lm4i08351_462&id=2087727.1 16/19
3/23/23, 11:05 AM Document 2087727.1
3 - systool -c scsi_host -v
- Slot #
4 - systool -c fc_remote_ports -v
5 - systool –c fc_transport –v
6 - systool -c scsi_disk -v
https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=lm4i08351_462&id=2087727.1 17/19
3/23/23, 11:05 AM Document 2087727.1
https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=lm4i08351_462&id=2087727.1 18/19
3/23/23, 11:05 AM Document 2087727.1
/etc/firewalld <<--- firewall configuration files !!
/etc/multipath.conf <<--- multipath configuration file !!
/etc/NetworkManager/NetworkManager.conf <<--- Network configuration file !!
/etc/openldap/ldap.conf <<--- LDAP configuration file !!
/etc/os-release <<-- current running OS release verion details !!
/etc/resolv.conf <<-- nameserver details information !!
/etc/rsyslog.conf <<-- mail server, messsage log, boot log, etc configuration file details !!
/etc/selinux <<--- Selinus security log and configuration files !!
/etc/snmp <<--- SNMP log and configuration files !!
/etc/ssh <<--- SSH log and configuration files !!
/etc/systemd <<-- system all configuration of various activity files !!
/etc/yum.repos.d <<--- Yum repository details and configuration files !!
/etc/yum.conf <<-- Yum configuration file !!
/sos_logs/sos.log <<--- sos log information that shows what all are the command being executed while running SOSreport.
<Snip>
2018-03-15 11:02:36,807 INFO: [plugin:pci] collecting output of 'lspci'
2018-03-15 11:02:36,880 INFO: [plugin:pci] collecting output of 'lspci -nvv'
2018-03-15 11:02:37,082 INFO: [plugin:pci] collecting output of 'lspci -tv'
<Snip>
Didn't find what you are looking for?
https://support.oracle.com/epmos/faces/DocumentDisplay?_adf.ctrl-state=lm4i08351_462&id=2087727.1 19/19